From: ebotcazou Date: Tue, 15 Mar 2016 17:55:39 +0000 (+0000) Subject: PR bootstrap/69513 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a429cda1022ff4df7d48d63a2a7fbd78b1b9c974;p=thirdparty%2Fgcc.git PR bootstrap/69513 * dwarf2out.c (flush_limbo_die_list): Really flush the limbo list. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@234226 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f88750a65a13..8909a99e08b7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2016-03-15 Eric Botcazou + + PR bootstrap/69513 + * dwarf2out.c (flush_limbo_die_list): Really flush the limbo list. + 2016-03-15 Senthil Kumar Selvaraj * config/avr/avr.md (rotl3): Set mode for operand 2. diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 6d5e3f540f5a..61bf267d6ec5 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -27281,12 +27281,15 @@ optimize_location_lists (dw_die_ref die) static void flush_limbo_die_list (void) { - limbo_die_node *node, *next_node; + limbo_die_node *node; - for (node = limbo_die_list; node; node = next_node) + /* get_context_die calls force_decl_die, which can put new DIEs on the + limbo list in LTO mode when nested functions are put in a different + partition than that of their parent function. */ + while ((node = limbo_die_list)) { dw_die_ref die = node->die; - next_node = node->next; + limbo_die_list = node->next; if (die->die_parent == NULL) { @@ -27324,8 +27327,6 @@ flush_limbo_die_list (void) } } } - - limbo_die_list = NULL; } /* Output stuff that dwarf requires at the end of every file,