This is GCC Bugzilla
This is GCC Bugzilla Version 2.20+
View Bug Activity | Format For Printing | Clone This Bug
"internal compiler error: Segmentation fault" with -O g++ -O -w -DHL2MP -DHL2_DLL -DUSES_SAVERESTORE -DNDEBUG -DGAME_DLL -DVECTOR -DPROTECTED_THINGS_ENABLE -DAOA_SERVER -march=pentium -mmmx -fpermissive -D_LINUX -o gccbug.o -c gccbug.cpp ../dlls/../game_shared/soundenvelope.cpp: In member function 'virtual CSoundPatch* CSoundControllerImp::SoundCreate(IRecipientFilter&, int, const char*)': ../dlls/../game_shared/soundenvelope.cpp:1029: internal compiler error: Segmentation fault Same thing works fine without the -O.
$ gcc -v Using built-in specs. Target: i386-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-libgcj-multifile --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --with-cpu=generic --host=i386-redhat-linux Thread model: posix gcc version 4.1.1 20060525 (Red Hat 4.1.1-1)
Could you attach the preprocessed source?
Yeah - the website wouldn't let me uploaded it at first cause it was too large. So I decided I'd get a script running to strip down the lines of the file to get a bare-bones repro case. It should be complete in a couple hours if that's ok.
(In reply to comment #3) > Yeah - the website wouldn't let me uploaded it at first cause it was too large. Can you try to compress it? Also if it still does not fit, can you just email it to me?
Created an attachment (id=11611) [edit] test case Attaching relatively bare-bones test case. It could perhaps be whittled down a bit more, but this was as small as it got by way of a hacked-up perl script. :)
Don't know how I got assigned, anyways this is fixed by the patch for PR 27793.
Subject: Bug 27894 Author: jakub Date: Tue Jun 13 09:21:30 2006 New Revision: 114607 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=114607 Log: PR middle-end/27793 * cp-tree.h (cxx_int_tree_map): New struct. (struct language_function): Add extern_decl_map field. * name-lookup.c (pushdecl_maybe_friend): Add x -> t mapping to cp_function_chain->extern_decl_map hash table instead of copying over DECL_UID. * cp-gimplify.c (cxx_int_tree_map_eq, cxx_int_tree_map_hash): New functions. (cp_genericize_r): Remap DECL_EXTERN local decls using cp_function_chain->extern_decl_map hash table. * decl.c (finish_function): Clear extern_decl_map. PR c++/26757 PR c++/27894 * g++.dg/tree-ssa/pr26757.C: New test. * g++.dg/tree-ssa/pr27894.C: New test. Added: trunk/gcc/testsuite/g++.dg/tree-ssa/pr26757.C trunk/gcc/testsuite/g++.dg/tree-ssa/pr27894.C Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/cp-gimplify.c trunk/gcc/cp/cp-tree.h trunk/gcc/cp/decl.c trunk/gcc/cp/name-lookup.c trunk/gcc/testsuite/ChangeLog
Subject: Bug 27894 Author: jakub Date: Sun Aug 13 20:26:38 2006 New Revision: 116115 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=116115 Log: 2006-08-13 Andrew MacLeod <amacleod@redhat.com> PR middle-end/27793 * tree-dfa.c (add_referenced_var): Assert DECL_UID is unique for different decls. 2006-08-13 Jakub Jelinek <jakub@redhat.com> PR c++/28677 PR middle-end/27793 * cp-tree.h (cxx_int_tree_map): New struct. (struct language_function): Add extern_decl_map field. * name-lookup.c (pushdecl_maybe_friend): Add x -> t mapping to cp_function_chain->extern_decl_map hash table instead of copying over DECL_UID. * cp-gimplify.c (cxx_int_tree_map_eq, cxx_int_tree_map_hash): New functions. (cp_genericize_r): Remap DECL_EXTERN local decls using cp_function_chain->extern_decl_map hash table. * decl.c (finish_function): Clear extern_decl_map. Revert: 2006-06-06 Andrew MacLeod <amacleod@redhat.com> PR middle-end/27793 * tree-dfa.c (referenced_vars_dup_list): New. List of duplicate referenced_variables with matching DECL_UID's. (find_referenced_vars): Make sure duplicate list is empty to start. (add_referenced_var): Add var to duplicate list if required. * tree-ssa.c (delete_tree_ssa): Clear var_ann's on duplicates. * tree-flow.h (referenced_vars_dup_list): External declaration. PR c++/26757 PR c++/27894 * g++.dg/tree-ssa/pr26757.C: New test. * g++.dg/tree-ssa/pr27894.C: New test. Added: branches/gcc-4_1-branch/gcc/testsuite/g++.dg/tree-ssa/pr26757.C branches/gcc-4_1-branch/gcc/testsuite/g++.dg/tree-ssa/pr27894.C Modified: branches/gcc-4_1-branch/gcc/ChangeLog branches/gcc-4_1-branch/gcc/cp/ChangeLog branches/gcc-4_1-branch/gcc/cp/cp-gimplify.c branches/gcc-4_1-branch/gcc/cp/cp-tree.h branches/gcc-4_1-branch/gcc/cp/decl.c branches/gcc-4_1-branch/gcc/cp/name-lookup.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog branches/gcc-4_1-branch/gcc/tree-dfa.c branches/gcc-4_1-branch/gcc/tree-flow.h branches/gcc-4_1-branch/gcc/tree-ssa.c