[lld] dbd65a0 - [ELF] OUTPUT_ARCH: report unclosed error
Fangrui Song via llvm-commits
llvm-commits at lists.llvm.org
Sat Jul 27 16:52:52 PDT 2024
Author: Fangrui Song
Date: 2024-07-27T16:52:47-07:00
New Revision: dbd65a07f212c6e85059b12ae3359942fcaee292
URL: https://github.com/llvm/llvm-project/commit/dbd65a07f212c6e85059b12ae3359942fcaee292
DIFF: https://github.com/llvm/llvm-project/commit/dbd65a07f212c6e85059b12ae3359942fcaee292.diff
LOG: [ELF] OUTPUT_ARCH: report unclosed error
Added:
Modified:
lld/ELF/ScriptParser.cpp
lld/test/ELF/linkerscript/outputarch.test
Removed:
################################################################################
diff --git a/lld/ELF/ScriptParser.cpp b/lld/ELF/ScriptParser.cpp
index bdde862db819e..1b218fc95e6ae 100644
--- a/lld/ELF/ScriptParser.cpp
+++ b/lld/ELF/ScriptParser.cpp
@@ -444,7 +444,7 @@ void ScriptParser::readOutput() {
void ScriptParser::readOutputArch() {
// OUTPUT_ARCH is ignored for now.
expect("(");
- while (next() != ")" && !atEOF())
+ while (till(")"))
;
}
diff --git a/lld/test/ELF/linkerscript/outputarch.test b/lld/test/ELF/linkerscript/outputarch.test
index 4819a983cfce8..982e55ac3b2ff 100644
--- a/lld/test/ELF/linkerscript/outputarch.test
+++ b/lld/test/ELF/linkerscript/outputarch.test
@@ -1,5 +1,13 @@
# REQUIRES: x86
-# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-freebsd /dev/null -o %t1
-# RUN: ld.lld -shared -o %t2 %t1 %s
+# RUN: rm -rf %t && split-file %s %t && cd %t
+# RUN: llvm-mc -filetype=obj -triple=x86_64 /dev/null -o a.o
+# RUN: ld.lld -shared -T 1.lds a.o
+#--- 1.lds
OUTPUT_ARCH(All data written here is ignored)
+
+#--- unclosed.lds
+OUTPUT_ARCH(All
+
+# RUN: not ld.lld -shared -T unclosed.lds a.o 2>&1 | FileCheck %s --check-prefix=UNCLOSED
+# UNCLOSED: error: unclosed.lds:1: unexpected EOF
More information about the llvm-commits
mailing list