http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46868
Summary: [4.6 Regression] ICE: SIGSEGV splay_tree_splay (splay-tree.c:149) on invalid code Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: minor Priority: P3 Component: c++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: zso...@seznam.cz ------ testcase.C ------ template < int > struct S { S < ------------------------ valgrind output: $ gcc testcase.C testcase.C:1:31: error: template argument 1 is invalid testcase.C:1:29: error: expected unqualified-id at end of input testcase.C:1:29: error: expected '}' at end of input cc1plus: error: expected ';' after struct definition ==15288== Invalid read of size 1 ==15288== at 0x4C284A1: strcmp (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==15288== by 0x11F354A: splay_tree_splay (splay-tree.c:149) ==15288== by 0x11F3B9D: splay_tree_lookup (splay-tree.c:456) ==15288== by 0x6BE534: get_fileinfo (c-lex.c:110) ==15288== by 0x5C6770: cxx_make_type (lex.c:684) ==15288== by 0x5C6868: make_class_type (lex.c:695) ==15288== by 0x52B473: xref_tag (decl.c:11184) ==15288== by 0x5F454C: emit_support_tinfos (rtti.c:1485) ==15288== by 0x5B6982: cp_write_global_declarations (decl2.c:3668) ==15288== by 0xA21C45: toplev_main (toplev.c:591) ==15288== by 0x6369BBC: (below main) (in /lib64/libc-2.11.2.so) ==15288== Address 0x0 is not stack'd, malloc'd or (recently) free'd ==15288== cc1plus: 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. Tested revisions: r167621 - crash 4.5.1 - OK