https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90982
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |needs-bisection Priority|P3 |P2 Status|UNCONFIRMED |NEW Last reconfirmed| |2019-06-24 Component|c++ |middle-end Target Milestone|--- |9.2 Ever confirmed|0 |1 --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- Confirmed. #1 0x000000000191fad2 in make_decl_rtl (decl=<var_decl 0x7ffff6dbebd0 d>) at ../../src/trunk/gcc/varasm.c:1343 1343 gcc_assert (!VAR_P (decl) (gdb) l 1338 /* Check that we are not being given an automatic variable. */ 1339 gcc_assert (TREE_CODE (decl) != PARM_DECL 1340 && TREE_CODE (decl) != RESULT_DECL); 1341 1342 /* A weak alias has TREE_PUBLIC set but not the other bits. */ 1343 gcc_assert (!VAR_P (decl) 1344 || TREE_STATIC (decl) 1345 || TREE_PUBLIC (decl) 1346 || DECL_EXTERNAL (decl) 1347 || DECL_REGISTER (decl)); (gdb) p debug_tree (decl) <var_decl 0x7ffff6dbebd0 d type <record_type 0x7ffff6daaa80 S sizes-gimplified type_5 type_6 BLK size <integer_cst 0x7ffff6c5e2e8 constant 192> unit-size <integer_cst 0x7ffff6c5e2b8 constant 24> align:64 warn_if_not_align:0 symtab:0 alias-set 2 canonical-type 0x7ffff6daaa80 fields <function_decl 0x7ffff6db3500 __dt type <method_type 0x7ffff6dafa80> public abstract external autoinline decl_3 QI t.ii:1:25 align:16 warn_if_not_align:0 context <record_type 0x7ffff6daaa80 S> full-name "S<3>::~S() noexcept (<uninstantiated>)" not-really-extern chain <function_decl 0x7ffff6db3700 __dt_base >> context <translation_unit_decl 0x7ffff6c4a168 t.ii> full-name "struct S<3>" X() X(constX&) this=(X&) n_parents=0 use_template=1 interface-unknown pointer_to_this <pointer_type 0x7ffff6daad20> reference_to_this <reference_type 0x7ffff6daf2a0> chain <type_decl 0x7ffff6d61c78 S>> used BLK t.ii:13:12 size <integer_cst 0x7ffff6c5e2e8 192> unit-size <integer_cst 0x7ffff6c5e2b8 24> align:64 warn_if_not_align:0 context <function_decl 0x7ffff6d98700 g> abstract_origin <parm_decl 0x7ffff6c66b00 d>> d is an automatic var but somehow it got no RTL assigned during expansion.