COFF: Corrected error message if a section failed to load.
authorRui Ueyama <ruiu@google.com>
Sun, 13 Sep 2015 20:22:22 +0000 (20:22 +0000)
committerRui Ueyama <ruiu@google.com>
Sun, 13 Sep 2015 20:22:22 +0000 (20:22 +0000)
There is no sense to use Name in these lines as it is not initialized yet.

Patch from Igor Kudrin!

llvm-svn: 247531

lld/COFF/InputFiles.cpp
lld/test/COFF/invalid-obj.test [new file with mode: 0644]

index a8537ec..df92c43 100644 (file)
@@ -115,9 +115,9 @@ void ObjectFile::initializeChunks() {
     const coff_section *Sec;
     StringRef Name;
     std::error_code EC = COFFObj->getSection(I, Sec);
-    error(EC, Twine("getSection failed: ") + Name);
+    error(EC, Twine("getSection failed: #") + Twine(I));
     EC = COFFObj->getSectionName(Sec, Name);
-    error(EC, Twine("getSectionName failed: ") + Name);
+    error(EC, Twine("getSectionName failed: #") + Twine(I));
     if (Name == ".sxdata") {
       SXData = Sec;
       continue;
diff --git a/lld/test/COFF/invalid-obj.test b/lld/test/COFF/invalid-obj.test
new file mode 100644 (file)
index 0000000..fd63f78
--- /dev/null
@@ -0,0 +1,14 @@
+# RUN: yaml2obj %s > %t.obj
+# RUN: not lld-link %t.obj 2>&1 | FileCheck %s
+
+# CHECK: getSectionName failed: #1:
+
+---
+header:
+  Machine:         IMAGE_FILE_MACHINE_AMD64
+  Characteristics: []
+sections:
+  - Name:            '/1'
+    Characteristics: []
+    SectionData:     00
+symbols: