http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49000
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-05-17 08:19:15 UTC --- TREE_ADDRESSABLE is cleared by maybe_optimize_var during execute_update_addresses_taken. If the debug stmt contains just the VAR_DECL, it will be renamed, but in this case it is MEM_REF and for some reason isn't renamed in that case (if I manually change it to the VAR_DECL, it is). Later on fold_stmt_1 on the debug stmt performs maybe_fold_reference and optimizes the MEM_REF into the VAR_DECL and triggers the checking failure. If maybe_fold_reference is used already when the DEBUG stmt is created, it will be just a VAR_DECL and thus it will work, but not sure if that is the way we want to go.