diff options
| author | Rui Ueyama <ruiu@google.com> | 2016-07-07 01:58:04 +0000 |
|---|---|---|
| committer | Rui Ueyama <ruiu@google.com> | 2016-07-07 01:58:04 +0000 |
| commit | 0f282a593f872ff4d424c930d3c40fa996e91c69 (patch) | |
| tree | 4e9642980f310bf48d9ffa8bc2ee16c2f2a453b4 | |
| parent | 730c82e6b87e9a58feddf9d837cb915c9e88e9fe (diff) | |
| download | bcm5719-llvm-0f282a593f872ff4d424c930d3c40fa996e91c69.tar.gz bcm5719-llvm-0f282a593f872ff4d424c930d3c40fa996e91c69.zip | |
Do not call warning() from ELFOptTable::parse().
warning() depends on Config->FatalWarnings, so we don't want to call
that function before we initialize that member.
llvm-svn: 274723
| -rw-r--r-- | lld/ELF/Config.h | 2 | ||||
| -rw-r--r-- | lld/ELF/DriverUtils.cpp | 7 | ||||
| -rw-r--r-- | lld/test/ELF/driver.test | 5 |
3 files changed, 5 insertions, 9 deletions
diff --git a/lld/ELF/Config.h b/lld/ELF/Config.h index 03f3d6cd618..3c9c7a1ea62 100644 --- a/lld/ELF/Config.h +++ b/lld/ELF/Config.h @@ -81,7 +81,7 @@ struct Configuration { bool EhFrameHdr; bool EnableNewDtags; bool ExportDynamic; - bool FatalWarnings = false; + bool FatalWarnings; bool GcSections; bool GnuHash = false; bool ICF; diff --git a/lld/ELF/DriverUtils.cpp b/lld/ELF/DriverUtils.cpp index 7cbba62b268..a864c8136c4 100644 --- a/lld/ELF/DriverUtils.cpp +++ b/lld/ELF/DriverUtils.cpp @@ -87,11 +87,8 @@ opt::InputArgList ELFOptTable::parse(ArrayRef<const char *> Argv) { "\", expected " + Twine(MissingCount) + (MissingCount == 1 ? " argument.\n" : " arguments")); - iterator_range<opt::arg_iterator> Unknowns = Args.filtered(OPT_UNKNOWN); - for (auto *Arg : Unknowns) - warning("warning: unknown argument: " + Arg->getSpelling()); - if (Unknowns.begin() != Unknowns.end()) - error("unknown argument(s) found"); + for (auto *Arg : Args.filtered(OPT_UNKNOWN)) + error("unknown argument: " + Arg->getSpelling()); return Args; } diff --git a/lld/test/ELF/driver.test b/lld/test/ELF/driver.test index 1b0552ca057..95e2100b4ab 100644 --- a/lld/test/ELF/driver.test +++ b/lld/test/ELF/driver.test @@ -3,9 +3,8 @@ # RUN: not ld.lld --unknown1 --unknown2 -m foo /no/such/file -lnosuchlib \ # RUN: 2>&1 | FileCheck -check-prefix=UNKNOWN %s -# UNKNOWN: warning: unknown argument: --unknown1 -# UNKNOWN: warning: unknown argument: --unknown2 -# UNKNOWN: unknown argument(s) found +# UNKNOWN: unknown argument: --unknown1 +# UNKNOWN: unknown argument: --unknown2 # UNKNOWN: unknown emulation: foo # UNKNOWN: cannot open /no/such/file # UNKNOWN: unable to find library -lnosuchlib |

