> Garrett Cooper schrieb: > > Ok, I just installworld'ed, recompiled the program with the > > following modifications, and I still get segfaults. And the question > > of the night is: why amd64 on a VERY recent CURRENT? > > I'm going to try the same app on an amd64 freebsd VMware instance > > with RELENG_7. > > Remember: just because a bunch of other people aren't reporting > > issues with CURRENT/amd64 doesn't mean that it isn't environmental, > > related to my hardware or compile options ;). > > Cheers, > > -Garrett > > > > #include <errno.h> > > #include <stdio.h> > > #include <sys/stat.h> > > > > int > > main() > > { > > > > struct stat sb; > > > > int o_errno; > > > > if (stat("/some/file/that/doesn't/exist", &sb) != 0) { > > o_errno = errno; > > printf("Errno: %d\n", errno); > > printf("%s\n", strerror(o_errno)); > > } > > > > return 0; > > > > } > > > > #include <errno.h> > > #include <stdio.h> > > #include <sys/stat.h> > > > > int > > main() > > { > > > > struct stat sb; > > > > int o_errno; > > > > if (stat("/some/file/that/doesn't/exist", &sb) != 0) { > > o_errno = errno; > > printf("Errno: %d\n", errno); > > printf("%s\n", strerror(o_errno)); > > } > > > > return 0; > > > > } > > > > [gcoo...@optimus ~]$ gcc -o badfile badfile.c > > [gcoo...@optimus ~]$ ./badfile > > Errno: 2 > > Segmentation fault: 11 (core dumped) > > [gcoo...@optimus ~]$ > > Well, compile with -g, start in gdb, check what value is wrong, the > usual stuff. Probably the return value of strerror() is interesting.
some facts: #include <stdio.h> int main() { printf("%s\n", strerror(2)); return 0; } 1- it works fine on i386 2- it bombs on amd64 3- with a local strerror.c (instead of the one in libc) works fine so, there is something realy wrong going on here! (and it gows back to at least 7.0-stable) danny _______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"