http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47559
Summary: ICE: verify_stmts failed: statement marked for throw, but doesn't with -fnon-call-exceptions and noexcept Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassig...@gcc.gnu.org ReportedBy: zso...@seznam.cz Created attachment 23189 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23189 reduced testcase (from g++.dg/opt/pr46864.C) Compiler output: $ gcc -O -fnon-call-exceptions testcase.C -std=c++0x testcase.C: In function 'void foo(int*)': testcase.C:1:6: error: statement marked for throw, but doesn't k__lsm.1_5 = 0; testcase.C:1:6: internal compiler error: verify_stmts failed Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. (gdb) bt #0 error (gmsgid=0x12aaf08 "statement marked for throw, but doesn%'t") at /mnt/svn/gcc-trunk/gcc/diagnostic.c:747 #1 0x0000000000a385e3 in verify_stmt () at /mnt/svn/gcc-trunk/gcc/tree-cfg.c:4175 #2 verify_stmts () at /mnt/svn/gcc-trunk/gcc/tree-cfg.c:4382 #3 0x0000000000b4d92d in verify_ssa (check_modified_stmt=1 '\001') at /mnt/svn/gcc-trunk/gcc/tree-ssa.c:878 #4 0x00000000009393f9 in execute_function_todo (data=<value optimized out>) at /mnt/svn/gcc-trunk/gcc/passes.c:1245 #5 0x0000000000939aed in execute_todo (flags=1) at /mnt/svn/gcc-trunk/gcc/passes.c:1276 #6 0x000000000093c0cf in execute_one_pass (pass=0x17886a0) at /mnt/svn/gcc-trunk/gcc/passes.c:1584 #7 0x000000000093c395 in execute_pass_list (pass=0x17886a0) at /mnt/svn/gcc-trunk/gcc/passes.c:1616 #8 0x000000000093c3a7 in execute_pass_list (pass=0x1788760) at /mnt/svn/gcc-trunk/gcc/passes.c:1617 #9 0x000000000093c3a7 in execute_pass_list (pass=0x17879e0) at /mnt/svn/gcc-trunk/gcc/passes.c:1617 #10 0x0000000000a7eab6 in tree_rest_of_compilation (fndecl=0x7ffff5d39700) at /mnt/svn/gcc-trunk/gcc/tree-optimize.c:422 #11 0x0000000000c46302 in cgraph_expand_function (node=0x7ffff5d48000) at /mnt/svn/gcc-trunk/gcc/cgraphunit.c:1563 #12 0x0000000000c48a0a in cgraph_expand_all_functions () at /mnt/svn/gcc-trunk/gcc/cgraphunit.c:1622 #13 cgraph_optimize () at /mnt/svn/gcc-trunk/gcc/cgraphunit.c:1882 #14 0x0000000000c48f8a in cgraph_finalize_compilation_unit () at /mnt/svn/gcc-trunk/gcc/cgraphunit.c:1083 #15 0x00000000005b35fa in cp_write_global_declarations () at /mnt/svn/gcc-trunk/gcc/cp/decl2.c:3977 #16 0x0000000000a27a34 in compile_file (argc=16, argv=0x7fffffffdad8) at /mnt/svn/gcc-trunk/gcc/toplev.c:591 #17 do_compile (argc=16, argv=0x7fffffffdad8) at /mnt/svn/gcc-trunk/gcc/toplev.c:1874 #18 toplev_main (argc=16, argv=0x7fffffffdad8) at /mnt/svn/gcc-trunk/gcc/toplev.c:1937 #19 0x00007ffff65f1bbd in __libc_start_main () from /lib/libc.so.6 #20 0x00000000004f9dd5 in _start () Tested revisions: r169440 - crash 4.5 r168785 - doesn't know noexcept