https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61303
Bug ID: 61303 Summary: gccgo: segfault, regression since 4.8.2 Product: gcc Version: 4.9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: go Assignee: ian at airs dot com Reporter: maciej at opencsw dot org CC: cmang at google dot com > ./bin/gen-catalog-index --help Usage of ./bin/gen-catalog-index: -arch="sparc": { sparc | i386 } -catalog-release="unstable": e.g. unstable, bratislava, kiel, dublin -os-release="SunOS5.10": e.g. SunOS5.10 -output="catalog": The name of the file to generate. -pkgdb-url="http://buildfarm.opencsw.org/pkgdb/rest": Web address of the pkgdb app. > ./bin/gen-catalog-index -output foo 2014/05/24 13:50:23 Making a request to http://buildfarm.opencsw.org/pkgdb/rest/catalogs/unstable/sparc/SunOS5.10/for-generation/as-dicts/ 2014/05/24 13:50:32 Retrieved {unstable sparc SunOS5.10} with 3704 packages 2014/05/24 13:50:32 Writing {unstable sparc SunOS5.10} to foo 2014/05/24 13:50:32 Catalog index written successfully > cp ./bin/gen-catalog-index{,.bak} > rm ./bin/gen-catalog-index > make bin/gen-catalog-index gccgo -g -o bin/gen-catalog-index src/gen-catalog-index/gen-catalog-index.o src/opencsw/diskformat/diskformat.o > rm foo > ./bin/gen-catalog-index -output foo 2014/05/24 13:51:05 Making a request to http://buildfarm.opencsw.org/pkgdb/rest/catalogs/unstable/sparc/SunOS5.10/for-generation/as-dicts/ Segmentation Fault (core dumped) > dbx - core Corefile specified executable: "/home/raos/opencsw/.buildsys/v2/go/bin/gen-catalog-index" For information about new features see `help changes' To remove this message, put `dbxenv suppress_startup_message 7.6' in your .dbxrc Reading gen-catalog-index dbx: warning: core object name "gen-catalog-ind" matches object name "gen-catalog-index" within the limit of 14. assuming they match core file header read successfully Reading ld.so.1 Reading libgo.so.5.0.0 dbx: warning: unknown location expression code (0x9e) Reading libm.so.2 Reading libgcc_s.so.1 Reading libc.so.1 Reading libpthread.so.1 Reading libsocket.so.1 Reading libnsl.so.1 Reading librt.so.1 Reading libaio.so.1 Reading libmd.so.1 Reading libc_psr.so.1 t@3 (l@3) terminated by signal SEGV (no mapping at the fault address) 0xfe730e98: _memcpy+0x04bc: st %o4, [%o0] (dbx) where current thread: t@3 =>[1] _memcpy(0x0, 0xff0d1f6c, 0x61, 0x60100, 0x30, 0x0), at 0xfe730e98 [2] runtime_netpoll(0x1, 0x80, 0xce1e1e3b, 0x0, 0xff0d1ff0, 0x180), at 0xfeb8e004 [3] schedule(0x1, 0xfef32f6c, 0x0, 0x0, 0xff0f3d28, 0xff0f5800), at 0xfeb92e90 [4] runtime_mstart(0xde811800, 0xce1e2000, 0x0, 0xce310a38, 0x4, 0xce310a38), at 0xfeb93130 (dbx) threads t@1 a l@1 ?() sleep on 0x3f3c0 in __lwp_park() t@2 a l@2 ?() sleep on 0x3f3f8 in __lwp_park() o> t@3 a l@3 ?() signal SIGSEGV in _memcpy() t@4 a l@4 ?() sleep on 0x3f810 in __lwp_park() (dbx) quit This is a regression since gcc-4.8.2. The same go code works when compiled with gccgo-4.8.2 and fails when compiled with gccgo-4.9.0.