https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62034

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
Better patch:

Index: gcc/lto-streamer-in.c
===================================================================
--- gcc/lto-streamer-in.c       (revision 213660)
+++ gcc/lto-streamer-in.c       (working copy)
@@ -1325,13 +1325,17 @@ lto_input_tree_1 (struct lto_input_block
     }
   else if (tag == LTO_tree_scc)
     {
-      unsigned len, entry_len;
-
-      /* Input and skip the SCC.  */
-      lto_input_scc (ib, data_in, &len, &entry_len);
+      /* Input and skip SCCs.  */
+      do
+       {
+         unsigned len, entry_len;
+         lto_input_scc (ib, data_in, &len, &entry_len);
+         tag = streamer_read_record_start (ib);
+       }
+      while (tag == LTO_tree_scc);

       /* Recurse.  */
-      return lto_input_tree (ib, data_in);
+      return lto_input_tree_1 (ib, data_in, tag, 0);
     }
   else
     {

Reply via email to