https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99849
--- Comment #1 from Martin Liška <marxin at gcc dot gnu.org> --- There's a backtrace: (gdb) p exp $1 = (tree) 0x7ffff77ddea0 (gdb) p debug_tree(exp) <compound_literal_expr 0x7ffff77ddea0 type <record_type 0x7ffff73e0930 uverbs_obj_idr_type readonly DI size <integer_cst 0x7ffff75e1bb8 constant 64> unit-size <integer_cst 0x7ffff75e1bd0 constant 8> align:64 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7ffff73e0d20 fields <field_decl 0x7ffff73e34c0 type type <record_type 0x7ffff73e0c78 uverbs_obj_type> DI a.i:14:26 size <integer_cst 0x7ffff75e1bb8 64> unit-size <integer_cst 0x7ffff75e1bd0 8> align:64 warn_if_not_align:0 offset_align 128 offset <integer_cst 0x7ffff75e1be8 constant 0> bit-offset <integer_cst 0x7ffff75e1c30 constant 0> context <record_type 0x7ffff73e0888 uverbs_obj_idr_type>> context <translation_unit_decl 0x7ffff75ec168 a.i> pointer_to_this <pointer_type 0x7ffff73e8000>> side-effects addressable arg:0 <decl_expr 0x7ffff77dde80 type <void_type 0x7ffff75f6f18 void VOID align:8 warn_if_not_align:0 symtab:0 alias-set -1 structural-equality pointer_to_this <pointer_type 0x7ffff75fd000>> side-effects arg:0 <var_decl 0x7ffff73e7000 __compound_literal.0 type <record_type 0x7ffff73e0930 uverbs_obj_idr_type> readonly addressable public ignored external DI a.i:26:42 size <integer_cst 0x7ffff75e1bb8 64> unit-size <integer_cst 0x7ffff75e1bd0 8> align:64 warn_if_not_align:0 context <translation_unit_decl 0x7ffff75ec168 a.i> initial <constructor 0x7ffff73d7978> (mem/u/c:DI (symbol_ref:DI ("__compound_literal.0.lto_priv.0") [flags 0x42] <var_decl 0x7ffff73e7000 __compound_literal.0>) [7 __compound_literal.0+0 S8 A64])> a.i:26:42 start: a.i:26:42 finish: a.i:26:42> a.i:26:71 start: a.i:26:71 finish: a.i:26:71> $2 = void (gdb) bt #0 expand_expr_real_1 (exp=0x7ffff77ddea0, target=0x0, tmode=E_DImode, modifier=EXPAND_INITIALIZER, alt_rtl=0x0, inner_reference_p=false) at /home/marxin/Programming/gcc/gcc/expr.c:11556 #1 0x00000000009e9a73 in expand_expr_real (exp=0x7ffff77ddea0, target=0x0, tmode=E_DImode, modifier=EXPAND_INITIALIZER, alt_rtl=0x0, inner_reference_p=false) at /home/marxin/Programming/gcc/gcc/expr.c:8519 #2 0x00000000009c5d42 in expand_expr (exp=0x7ffff77ddea0, target=0x0, mode=E_DImode, modifier=EXPAND_INITIALIZER) at /home/marxin/Programming/gcc/gcc/expr.h:282 #3 0x00000000009e8aa2 in expand_expr_addr_expr_1 (exp=0x7ffff77ddea0, target=0x0, tmode=..., modifier=EXPAND_INITIALIZER, as=0 '\000') at /home/marxin/Programming/gcc/gcc/expr.c:8223 #4 0x00000000009e8fc0 in expand_expr_addr_expr_1 (exp=0x7ffff73fe7b0, target=0x0, tmode=..., modifier=EXPAND_INITIALIZER, as=0 '\000') at /home/marxin/Programming/gcc/gcc/expr.c:8269 #5 0x00000000009e94e1 in expand_expr_addr_expr (exp=0x7ffff77ddec0, target=0x0, tmode=E_DImode, modifier=EXPAND_INITIALIZER) at /home/marxin/Programming/gcc/gcc/expr.c:8344 #6 0x00000000009f88ed in expand_expr_real_1 (exp=0x7ffff77ddec0, target=0x0, tmode=E_VOIDmode, modifier=EXPAND_INITIALIZER, alt_rtl=0x0, inner_reference_p=false) at /home/marxin/Programming/gcc/gcc/expr.c:11513 #7 0x00000000009e9a73 in expand_expr_real (exp=0x7ffff77ddec0, target=0x0, tmode=E_VOIDmode, modifier=EXPAND_INITIALIZER, alt_rtl=0x0, inner_reference_p=false) at /home/marxin/Programming/gcc/gcc/expr.c:8519 #8 0x00000000010b3dcc in expand_expr (modifier=EXPAND_INITIALIZER, mode=E_VOIDmode, target=0x0, exp=0x7ffff77ddec0) at /home/marxin/Programming/gcc/gcc/expr.h:282 #9 output_constant (exp=0x7ffff77ddec0, size=8, align=64, reverse=<optimized out>, merge_strings=<optimized out>) at /home/marxin/Programming/gcc/gcc/varasm.c:5240 #10 0x00000000010b2e1e in output_constant (merge_strings=false, reverse=false, align=64, size=<optimized out>, exp=0x7ffff77ddec0) at /home/marxin/Programming/gcc/gcc/varasm.c:5529 #11 output_constructor_regular_field (local=<synthetic pointer>) at /home/marxin/Programming/gcc/gcc/varasm.c:5529 #12 output_constructor (exp=0x7ffff74022e8, size=8, align=64, reverse=<optimized out>, outer=0x0) at /home/marxin/Programming/gcc/gcc/varasm.c:5796 #13 0x00000000010b4804 in output_constant (merge_strings=false, reverse=false, align=64, size=<optimized out>, exp=<optimized out>) at /home/marxin/Programming/gcc/gcc/varasm.c:5148 #14 assemble_variable_contents (decl=0x7ffff7fbef30, name=<optimized out>, dont_output_data=<optimized out>, merge_strings=<optimized out>) at /home/marxin/Programming/gcc/gcc/varasm.c:2211 #15 0x00000000010ba145 in assemble_variable (decl=0x7ffff7fbef30, top_level=<optimized out>, at_end=<optimized out>, dont_output_data=0) at /home/marxin/Programming/gcc/gcc/varasm.c:2390 #16 0x00000000010bde4a in varpool_node::assemble_decl (this=0x7ffff73eb380) at /home/marxin/Programming/gcc/gcc/varpool.c:595 #17 varpool_node::assemble_decl (this=0x7ffff73eb380) at /home/marxin/Programming/gcc/gcc/varpool.c:563 #18 0x00000000010be971 in symbol_table::output_variables (this=this@entry=0x7ffff75e5000) at /home/marxin/Programming/gcc/gcc/varpool.c:761 #19 0x00000000008ede77 in symbol_table::compile (this=<optimized out>) at /home/marxin/Programming/gcc/gcc/cgraphunit.c:2361 #20 symbol_table::compile (this=<optimized out>) at /home/marxin/Programming/gcc/gcc/cgraphunit.c:2269 #21 0x0000000000836bc5 in lto_main () at /home/marxin/Programming/gcc/gcc/lto/lto.c:653 #22 0x0000000000d7076e in compile_file () at /home/marxin/Programming/gcc/gcc/toplev.c:457 #23 0x000000000080e537 in do_compile () at /home/marxin/Programming/gcc/gcc/toplev.c:2201 #24 toplev::main (this=this@entry=0x7fffffffdcee, argc=<optimized out>, argc@entry=18, argv=<optimized out>, argv@entry=0x7fffffffddf8) at /home/marxin/Programming/gcc/gcc/toplev.c:2340 #25 0x0000000000811105 in main (argc=18, argv=0x7fffffffddf8) at /home/marxin/Programming/gcc/gcc/main.c:39