------- Comment #2 from pinskia at gcc dot gnu dot org  2008-12-26 22:29 -------
Happens with both the C and C++ front-ends.
Backtrace:
#2  0x00566f2e in replace_by_duplicate_decl (tp=0xbffff43c,
vars_map=0x43902ae0, to_context=0x42f76100) at
/Users/apinski/src/local/gcc/gcc/tree-cfg.c:5412
#3  0x00568ab2 in replace_block_vars_by_duplicates (block=0x42f79a40,
vars_map=0x43902ae0, to_context=0x42f76100) at
/Users/apinski/src/local/gcc/gcc/tree-cfg.c:5838
#4  0x00568d27 in replace_block_vars_by_duplicates (block=0x42f79a40,
vars_map=0x43902ae0, to_context=0x42f76100) at
/Users/apinski/src/local/gcc/gcc/tree-cfg.c:5852
#5  0x0056985d in move_sese_region_to_fn (dest_cfun=0x42ed0d20,
entry_bb=0x42f79f80, exit_bb=0x42f79e40, orig_block=0x42f79a80) at
/Users/apinski/src/local/gcc/gcc/tree-cfg.c:6019
#6  0x0040361f in expand_omp_taskreg (region=0x439010c0) at
/Users/apinski/src/local/gcc/gcc/omp-low.c:3404
#7  0x0040d207 in expand_omp (region=0x439010c0) at
/Users/apinski/src/local/gcc/gcc/omp-low.c:5201
#8  0x0040d720 in execute_expand_omp () at
/Users/apinski/src/local/gcc/gcc/omp-low.c:5373
#9  0x0043a827 in execute_one_pass (pass=0xd0afc0) at
/Users/apinski/src/local/gcc/gcc/passes.c:1279

--- CUT ---
(gdb) p debug_tree (t)
 <type_decl 0x42f75380 D.1571
    type <record_type 0x42f75310 A VOID
        align 8 symtab 0 alias set -1 canonical type 0x42f75310 context <block
0x42f79a40>
        chain <type_decl 0x42f75380 D.1571>>
    VOID file t.cc line 5 col 12
    align 1 context <function_decl 0x42f76080 foo>>
--- CUT ---
I think we should ignore TYPE_DECLs if it is not a variable length based type.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38633

Reply via email to