GCC Bugzilla – Bug 35261
GCC4.3 internal compiler error: verify_flow_info failed
Last modified: 2011-09-19 17:51:44 UTC
Compiling using GCC4.3 with g++ -msse4.1 -O2 -c repro.cpp causes internal compiler error: repro.cpp: In function 'int main()': repro.cpp:122: error: BB 10 can not throw but has EH edges repro.cpp:122: internal compiler error: verify_flow_info failed Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. In this file the error goes away if you change const static repro_u32 LOOP_COUNT = 100 * 1000; to const static repro_s32 LOOP_COUNT = 100 * 1000; Alternately if I remove the creation of Timer object (comment out Timer t( pass, expCycles ); ) the problem goes away.
Created attachment 15186 [details] Source File with the problem
Created attachment 15479 [details] bug.ii I ran into this same error with different code, which I posted to <http://gcc.gnu.org/ml/gcc-help/2008-04/msg00190.html> but reduced further to the attached. It, like the original code, fails with GCC 4.3.0, GCC 4.3-20080410, and GCC-4.4-20080411, when GCC is configured with --enable-checking. gcc -c -O is enough to show it with this: $ ~/gcc/bin/gcc -c -O bug.ii bug.ii: In function ‘void h()’: bug.ii:7: error: BB 13 can not throw but has EH edges bug.ii:7: internal compiler error: verify_flow_info failed Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. $ ~/gcc/bin/gcc --version gcc (GCC) 4.4.0 20080411 (experimental) Copyright (C) 2008 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Both of these work on the trunk on i386-darwin8.11, Do you know if it works on the 4.3 branch?
4.3 is not maintained -- should this bug be closed?
My testcase failed with 4.3 and 4.4. 4.3.6 still rejects it, but it seems to be accepted by 4.4.6, so if 4.3 is no longer maintained, this looks fixed.