re PR lto/90369 (error: could not unlink output file)
authorRichard Biener <rguenther@suse.de>
Tue, 7 May 2019 08:52:33 +0000 (08:52 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Tue, 7 May 2019 08:52:33 +0000 (08:52 +0000)
2019-05-07  Richard Biener  <rguenther@suse.de>

PR lto/90369
* lto-wrapper.c (debug_objcopy): Use the original filename
including archive offset for the filename used for -save-temps.

From-SVN: r270937

gcc/ChangeLog
gcc/lto-wrapper.c

index 028f992b9f18e10ffcc52fe49834560af4ffe1a8..161e966b0d4fbeb4920bb4d910429a93173ff0aa 100644 (file)
@@ -1,3 +1,9 @@
+2019-05-07  Richard Biener  <rguenther@suse.de>
+
+       PR lto/90369
+       * lto-wrapper.c (debug_objcopy): Use the original filename
+       including archive offset for the filename used for -save-temps.
+
 2019-05-07  Li Jia He  <helijia@linux.ibm.com>
 
        * tree-ssa-phiopt.c (two_value_replacement): Fix a typo in parameter
index 56eea90ac8c179f664a872c5c8de051e6de94f55..ac971494054914e5b68691bbac8c1e7eb0609628 100644 (file)
@@ -1044,6 +1044,7 @@ debug_objcopy (const char *infile, bool rename)
   int err;
 
   const char *p;
+  const char *orig_infile = infile;
   off_t inoff = 0;
   long loffset;
   int consumed;
@@ -1080,9 +1081,9 @@ debug_objcopy (const char *infile, bool rename)
 
   if (save_temps)
     {
-      outfile = (char *) xmalloc (strlen (infile)
+      outfile = (char *) xmalloc (strlen (orig_infile)
                                  + sizeof (".debug.temp.o") + 1);
-      strcpy (outfile, infile);
+      strcpy (outfile, orig_infile);
       strcat (outfile, ".debug.temp.o");
     }
   else