------- Comment #3 from rguenth at gcc dot gnu dot org 2009-05-05 09:58 ------- Confirmed.
#1 0x0000000000befdf6 in output_constructor (exp=0x7ffff7fd0cc0, size=80, align=256) at /space/rguenther/src/svn/trunk/gcc/varasm.c:4716 4716 gcc_assert (pos >= total_bytes); (gdb) p pos $1 = 4 (gdb) p total_bytes $2 = 8 (gdb) call debug_generic_expr (exp) {1, 2, 3, 4, 5, 6, 7, 8, 9, 10} (gdb) call debug_tree (exp) <constructor 0x7ffff7fd0cc0 type <array_type 0x7ffff5f3c0c0 type <integer_type 0x7ffff7ee16c0 integer(kind=8) public DI ... idx <integer_cst 0x7ffff7eedae0 type <integer_type 0x7ffff7ee16c0 integer(kind=8)> constant 0> val <integer_cst 0x7ffff7eed090 type <integer_type 0x7ffff7ee1540 integer(kind=4)> constant 1> ... there is a mismatch with the array element type and the actual element types. Thus confirmed as a frontend issue. -- rguenth at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Known to work| |4.3.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40018