summaryrefslogtreecommitdiff
path: root/gcc/lto-wrapper.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2019-05-07 08:52:33 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2019-05-07 08:52:33 +0000
commitfe26771191ab959eab1b92ac8a574a900a2a3f4c (patch)
treefcbda5dd40eb68ec5cc39af1d1ec5ef5eb696728 /gcc/lto-wrapper.c
parent03de2955128860f04bd371b71e0f23b4498c94e2 (diff)
re PR lto/90369 (error: could not unlink output file)
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
Diffstat (limited to 'gcc/lto-wrapper.c')
-rw-r--r--gcc/lto-wrapper.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/lto-wrapper.c b/gcc/lto-wrapper.c
index 56eea90ac8c..ac971494054 100644
--- a/gcc/lto-wrapper.c
+++ b/gcc/lto-wrapper.c
@@ -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