http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59430
Bug ID: 59430 Summary: [4.9 regression] os/user FAILs on Solaris Product: gcc Version: 4.9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: go Assignee: ian at airs dot com Reporter: ro at gcc dot gnu.org Host: *-*-solaris2.* Target: *-*-solaris2.* Build: *-*-solaris2.* The os/user test is now FAILing on Solaris: --- FAIL: TestCurrent (0.00 seconds) user_test.go:23: Current: user: lookup userid 2110: error 0 --- FAIL: TestLookup (0.00 seconds) user_test.go:64: Current: user: lookup userid 2110: error 0 --- FAIL: TestLookupId (0.00 seconds) user_test.go:82: Current: user: lookup userid 2110: error 0 FAIL FAIL: os/user I think this happens because lookup_unix.go assumes getpwnam_r and getpwuid_r to return an int, while the Solaris functions return struct passwd unless _POSIX_PTHREAD_SEMANTICS is defined (the POSIX.1c Draft 6 variants). One needs to call __posix_getpwuid_r and __posix_getpwnam_r instead to get the standard signatures. Rainer