http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50166
Bug #: 50166 Summary: ICE in go1: SEGV on Solaris 10/x86 Classification: Unclassified Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: go AssignedTo: i...@airs.com ReportedBy: r...@gcc.gnu.org Host: i386-pc-solaris2.10 Target: i386-pc-solaris2.10 Build: i386-pc-solaris2.10 Between 20110819 and 20110823, go1 started to ICE compiling libgo. This seems to happen for every file, e.g. > ./go1 /var/gcc/reghunt/trunk/libgo/go/sync/atomic/doc.go <built-in>:0:0: internal compiler error: Segmentation Fault Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. Running go1 under gdb, I find this stacktrace: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 1 (LWP 1)] 0x08a9747d in std::_Rb_tree_decrement (__x=0x8ea3240) at /var/gcc/reghunt/trunk/libstdc++-v3/src/tree.cc:91 (gdb) where #0 0x08a9747d in std::_Rb_tree_decrement (__x=0x8ea3240) at /var/gcc/reghunt/trunk/libstdc++-v3/src/tree.cc:91 #1 0x08a8c640 in std::_Rb_tree_iterator<std::pair<std::string const, Named_type*> >::operator-- (this=0x8ea323c, __v=...) at /var/gcc/reghunt/10-gcc/prev-i386-pc-solaris2.10/libstdc++-v3/include/bits/stl_tree.h:203 #2 std::_Rb_tree<std::string, std::pair<std::string const, Named_type*>, std::_Select1st<std::pair<std::string const, Named_type*> >, std::less<std::string>, std::allocator<std::pair<std::string const, Named_type*> > >::_M_insert_unique (this=0x8ea323c, __v=...) at /var/gcc/reghunt/10-gcc/prev-i386-pc-solaris2.10/libstdc++-v3/include/bits/stl_tree.h:1285 #3 0x081d9370 in std::map<std::string, Named_type*, std::less<std::string>, std::allocator<std::pair<std::string const, Named_type*> > >::insert (name=0x8b3b73e <error reading variable>, is_unsigned=true, bits=8, runtime_type_kind=8) at /var/gcc/reghunt/10-gcc/prev-i386-pc-solaris2.10/libstdc++-v3/include/bits/stl_map.h:521 #4 Integer_type::create_integer_type (name=0x8b3b73e <error reading variable>, is_unsigned=true, bits=8, runtime_type_kind=8) at /var/gcc/reghunt/trunk/gcc/go/gofrontend/types.cc:1837 #5 0x081a29a6 in Gogo::Gogo (this=0x8ff9a30, backend=0x8ea2da4, int_type_size=32, pointer_size=32) at /var/gcc/reghunt/trunk/gcc/go/gofrontend/gogo.cc:44 #6 0x08190d6c in go_create_gogo (int_type_size=32, pointer_size=32) at /var/gcc/reghunt/trunk/gcc/go/gofrontend/go.cc:31 #7 0x0818d62b in go_langhook_init () at /var/gcc/reghunt/trunk/gcc/go/go-lang.c:96 #8 0x0844c797 in lang_dependent_init (argc=2, argv=0x80474c4) at /var/gcc/reghunt/trunk/gcc/toplev.c:1714 #9 do_compile (argc=2, argv=0x80474c4) at /var/gcc/reghunt/trunk/gcc/toplev.c:1872 #10 toplev_main (argc=2, argv=0x80474c4) at /var/gcc/reghunt/trunk/gcc/toplev.c:1962 #11 0x08a74eeb in main (argc=2, argv=0x80474c4) at /var/gcc/reghunt/trunk/gcc/main.c:36 (gdb) up #1 0x08a8c640 in std::_Rb_tree_iterator<std::pair<std::string const, Named_type*> >::operator-- (this=0x8ea323c, __v=...) at /var/gcc/reghunt/10-gcc/prev-i386-pc-solaris2.10/libstdc++-v3/include/bits/stl_tree.h:203 (gdb) up #2 std::_Rb_tree<std::string, std::pair<std::string const, Named_type*>, std::_Select1st<std::pair<std::string const, Named_type*> >, std::less<std::string>, std::allocator<std::pair<std::string const, Named_type*> > >::_M_insert_unique (this=0x8ea323c, __v=...) at /var/gcc/reghunt/10-gcc/prev-i386-pc-solaris2.10/libstdc++-v3/include/bits/stl_tree.h:1285 (gdb) up #3 0x081d9370 in std::map<std::string, Named_type*, std::less<std::string>, std::allocator<std::pair<std::string const, Named_type*> > >::insert (name=0x8b3b73e <error reading variable>, is_unsigned=true, bits=8, runtime_type_kind=8) at /var/gcc/reghunt/10-gcc/prev-i386-pc-solaris2.10/libstdc++-v3/include/bits/stl_map.h:521 (gdb) up #4 Integer_type::create_integer_type (name=0x8b3b73e <error reading variable>, is_unsigned=true, bits=8, runtime_type_kind=8) at /var/gcc/reghunt/trunk/gcc/go/gofrontend/types.cc:1837 (gdb) where #0 0x08a9747d in std::_Rb_tree_decrement (__x=0x8ea3240) at /var/gcc/reghunt/trunk/libstdc++-v3/src/tree.cc:91 #1 0x08a8c640 in std::_Rb_tree_iterator<std::pair<std::string const, Named_type*> >::operator-- (this=0x8ea323c, __v=...) at /var/gcc/reghunt/10-gcc/prev-i386-pc-solaris2.10/libstdc++-v3/include/bits/stl_tree.h:203 #2 std::_Rb_tree<std::string, std::pair<std::string const, Named_type*>, std::_Select1st<std::pair<std::string const, Named_type*> >, std::less<std::string>, std::allocator<std::pair<std::string const, Named_type*> > >::_M_insert_unique (this=0x8ea323c, __v=...) at /var/gcc/reghunt/10-gcc/prev-i386-pc-solaris2.10/libstdc++-v3/include/bits/stl_tree.h:1285 #3 0x081d9370 in std::map<std::string, Named_type*, std::less<std::string>, std::allocator<std::pair<std::string const, Named_type*> > >::insert (name=0x8b3b73e <error reading variable>, is_unsigned=true, bits=8, runtime_type_kind=8) at /var/gcc/reghunt/10-gcc/prev-i386-pc-solaris2.10/libstdc++-v3/include/bits/stl_map.h:521 #4 Integer_type::create_integer_type (name=0x8b3b73e <error reading variable>, is_unsigned=true, bits=8, runtime_type_kind=8) at /var/gcc/reghunt/trunk/gcc/go/gofrontend/types.cc:1837 #5 0x081a29a6 in Gogo::Gogo (this=0x8ff9a30, backend=0x8ea2da4, int_type_size=32, pointer_size=32) at /var/gcc/reghunt/trunk/gcc/go/gofrontend/gogo.cc:44 #6 0x08190d6c in go_create_gogo (int_type_size=32, pointer_size=32) at /var/gcc/reghunt/trunk/gcc/go/gofrontend/go.cc:31 #7 0x0818d62b in go_langhook_init () at /var/gcc/reghunt/trunk/gcc/go/go-lang.c:96 #8 0x0844c797 in lang_dependent_init (argc=2, argv=0x80474c4) at /var/gcc/reghunt/trunk/gcc/toplev.c:1714 #9 do_compile (argc=2, argv=0x80474c4) at /var/gcc/reghunt/trunk/gcc/toplev.c:1872 #10 toplev_main (argc=2, argv=0x80474c4) at /var/gcc/reghunt/trunk/gcc/toplev.c:1962 #11 0x08a74eeb in main (argc=2, argv=0x80474c4) at /var/gcc/reghunt/trunk/gcc/main.c:36