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!