summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lld/lib/Driver/Driver.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/lld/lib/Driver/Driver.cpp b/lld/lib/Driver/Driver.cpp
index 1122ae9bc54..f87bf5b16c3 100644
--- a/lld/lib/Driver/Driver.cpp
+++ b/lld/lib/Driver/Driver.cpp
@@ -63,8 +63,13 @@ bool Driver::link(LinkingContext &context, raw_ostream &diagnostics) {
llvm::raw_string_ostream stream(buf);
if (error_code ec = ie->parse(context, stream)) {
- FileNode *fileNode = dyn_cast<FileNode>(ie.get());
- stream << fileNode->errStr(ec) << "\n";
+ if (FileNode *fileNode = dyn_cast<FileNode>(ie.get()))
+ stream << fileNode->errStr(ec) << "\n";
+ else if (dyn_cast<Group>(ie.get()))
+ // FIXME: We need a better diagnostics here
+ stream << "Cannot parse group input element\n";
+ else
+ llvm_unreachable("Unknown type of input element");
fail = true;
}
OpenPOWER on IntegriCloud