From: Richard Biener Date: Wed, 12 Feb 2014 09:01:30 +0000 (+0000) Subject: re PR fortran/60060 (lto1: internal compiler error: in add_AT_specification, at dwarf... X-Git-Tag: releases/gcc-4.9.0~950 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=283416b3fbccccc90cac74c351517c29204a3775;p=thirdparty%2Fgcc.git re PR fortran/60060 (lto1: internal compiler error: in add_AT_specification, at dwarf2out.c:4096) 2014-02-12 Richard Biener PR lto/60060 * lto-lang.c (lto_write_globals): Do not call wrapup_global_declarations or emit_debug_global_declarations but emit debug info for non-function scope variables directly. From-SVN: r207715 --- diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog index 94d19ee78bc7..1b55d3efd73e 100644 --- a/gcc/lto/ChangeLog +++ b/gcc/lto/ChangeLog @@ -1,3 +1,11 @@ +2014-02-12 Richard Biener + + PR lto/60060 + * lto-lang.c (lto_write_globals): Do not call + wrapup_global_declarations or emit_debug_global_declarations + but emit debug info for non-function scope variables + directly. + 2014-02-06 Jan Hubicka * lto.c (unify_scc): Free CONSTRUCTOR_ELTS. diff --git a/gcc/lto/lto-lang.c b/gcc/lto/lto-lang.c index 4d6d0f5ffd9d..28eac6f3e9f7 100644 --- a/gcc/lto/lto-lang.c +++ b/gcc/lto/lto-lang.c @@ -1082,17 +1082,11 @@ lto_write_globals (void) if (flag_wpa) return; - /* Record the global variables. */ - vec lto_global_var_decls = vNULL; + /* Output debug info for global variables. */ varpool_node *vnode; FOR_EACH_DEFINED_VARIABLE (vnode) - lto_global_var_decls.safe_push (vnode->decl); - - tree *vec = lto_global_var_decls.address (); - int len = lto_global_var_decls.length (); - wrapup_global_declarations (vec, len); - emit_debug_global_declarations (vec, len); - lto_global_var_decls.release (); + if (!decl_function_context (vnode->decl)) + debug_hooks->global_decl (vnode->decl); } static tree