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

--- Comment #26 from Rainer Emrich <rai...@emrich-ebersheim.de> ---
(In reply to Rainer Emrich from comment #25)
> (In reply to Richard Biener from comment #24)
> > Note that the issue should only cause option merging to be skipped for files
> > in archives (and that, too, on x86_64-linux).  Though compared to the 4.9
> > branch
> > we do
> > 
> >       fd = open (argv[i], O_RDONLY);
> >       if (fd == -1)
> >         {
> >           lto_argv[lto_argc++] = argv[i];
> >           continue;
> >         }
> > 
> > vs.
> > 
> >      fd = open (argv[i], O_RDONLY);
> >       if (fd == -1)
> >         continue;
> > 
> > so we add the file to later processing even if we failed to open it.  Thus,
> > does removing _that_ also fix the issue?
> 
> Native bootstrap for c,c++ started on x86_64-w64-mingw32. I will run the
> testsuite afterwards. Results expected in about 4 hours.

Tested patch:

Index: gcc/lto-wrapper.c
===================================================================
--- gcc/lto-wrapper.c   (Revision 222611)
+++ gcc/lto-wrapper.c   (Arbeitskopie)
@@ -936,10 +936,7 @@ run_gcc (unsigned argc, char *argv[])
        }
       fd = open (argv[i], O_RDONLY);
       if (fd == -1)
-       {
-         lto_argv[lto_argc++] = argv[i];
-         continue;
-       }
+       continue;

       if (find_and_merge_options (fd, file_offset, LTO_SECTION_NAME_PREFIX,
                                  &fdecoded_options, &fdecoded_options_count,



Doesn't help, lto failures back again!

Reply via email to