aboutsummaryrefslogtreecommitdiff
path: root/gold
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@google.com>2007-11-28 19:39:40 +0000
committerIan Lance Taylor <iant@google.com>2007-11-28 19:39:40 +0000
commit2d6840917d290e343c5acfb908c765ea0559c757 (patch)
treee325a6e4b6a85f872142400df4dd9ee70cdbfeff /gold
parentef04e3921e25e1a434585ca2ae26dd0ca1ae1b1b (diff)
downloadgdb-2d6840917d290e343c5acfb908c765ea0559c757.zip
gdb-2d6840917d290e343c5acfb908c765ea0559c757.tar.gz
gdb-2d6840917d290e343c5acfb908c765ea0559c757.tar.bz2
Don't try to delete the output file if we don't know its name yet.
Diffstat (limited to 'gold')
-rw-r--r--gold/gold.cc2
-rw-r--r--gold/parameters.h6
2 files changed, 7 insertions, 1 deletions
diff --git a/gold/gold.cc b/gold/gold.cc
index 9baebaf..0b7c2ec 100644
--- a/gold/gold.cc
+++ b/gold/gold.cc
@@ -47,7 +47,7 @@ const char* program_name;
void
gold_exit(bool status)
{
- if (!status && parameters != NULL)
+ if (!status && parameters != NULL && parameters->options_valid())
unlink_if_ordinary(parameters->output_file_name());
exit(status ? EXIT_SUCCESS : EXIT_FAILURE);
}
diff --git a/gold/parameters.h b/gold/parameters.h
index 4e135c6..4b764e3 100644
--- a/gold/parameters.h
+++ b/gold/parameters.h
@@ -47,6 +47,12 @@ class Parameters
errors() const
{ return this->errors_; }
+ // Whether the options are valid. This should not normally be
+ // called, but it is needed by gold_exit.
+ bool
+ options_valid() const
+ { return this->options_valid_; }
+
// Whether to use threads.
bool
threads() const