http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56570
--- Comment #8 from Richard Biener <rguenth at gcc dot gnu.org> 2013-03-08
12:42:12 UTC ---
We don't even copy the decl with the DECL_DEBUG_EXPR in copy_debug_stmt during
the 2nd inlining! Because when the decls disappear from local-decls nothing
remaps them and we get into
else if (TREE_CODE (t) == VAR_DECL
&& !is_global_var (t)
&& !pointer_map_contains (id->decl_map, t))
/* T is a non-localized variable. */;
so we absolutely rely on being able to share DECL_DEBUG_EXPR for those!
Thus, the SRA patch is correct and verification should be made even stricter.