This reverts the r263125

It was discussed to make all messages be 
lowercase to be consistent with clang.
(also reverts the r263128 which fixed 
build bot fail after r263125)

Original commit message:
[ELF] - Consistent spelling for error/warning messages

Previously error and warnings were not consistent in lld.
Some of them started from lowercase letter, others from
uppercase. Also there was one or two which had a dot at the end.
This patch changes all messages to start from uppercase letter if
they were not before.

Differential revision: http://reviews.llvm.org/D18045

llvm-svn: 263240
This commit is contained in:
George Rimar 2016-03-11 14:43:02 +00:00
parent 7ca9614c71
commit 5761042db7
21 changed files with 74 additions and 74 deletions

View File

@ -92,7 +92,7 @@ void LinkerDriver::addFile(StringRef Path) {
using namespace llvm::sys::fs; using namespace llvm::sys::fs;
log(Path); log(Path);
auto MBOrErr = MemoryBuffer::getFile(Path); auto MBOrErr = MemoryBuffer::getFile(Path);
if (error(MBOrErr, "Cannot open " + Path)) if (error(MBOrErr, "cannot open " + Path))
return; return;
std::unique_ptr<MemoryBuffer> &MB = *MBOrErr; std::unique_ptr<MemoryBuffer> &MB = *MBOrErr;
MemoryBufferRef MBRef = MB->getMemBufferRef(); MemoryBufferRef MBRef = MB->getMemBufferRef();
@ -312,7 +312,7 @@ void LinkerDriver::createFiles(opt::InputArgList &Args) {
} }
if (Files.empty() && !HasError) if (Files.empty() && !HasError)
error("No input files"); error("no input files.");
} }
template <class ELFT> static void initSymbols() { template <class ELFT> static void initSymbols() {

View File

@ -67,15 +67,15 @@ opt::InputArgList elf::parseArgs(llvm::BumpPtrAllocator *A,
// Parse options and then do error checking. // Parse options and then do error checking.
opt::InputArgList Args = Table.ParseArgs(Vec, MissingIndex, MissingCount); opt::InputArgList Args = Table.ParseArgs(Vec, MissingIndex, MissingCount);
if (MissingCount) if (MissingCount)
error(Twine("Missing arg value for \"") + Args.getArgString(MissingIndex) + error(Twine("missing arg value for \"") + Args.getArgString(MissingIndex) +
"\", expected " + Twine(MissingCount) + "\", expected " + Twine(MissingCount) +
(MissingCount == 1 ? " argument.\n" : " arguments")); (MissingCount == 1 ? " argument.\n" : " arguments"));
iterator_range<opt::arg_iterator> Unknowns = Args.filtered(OPT_UNKNOWN); iterator_range<opt::arg_iterator> Unknowns = Args.filtered(OPT_UNKNOWN);
for (auto *Arg : Unknowns) for (auto *Arg : Unknowns)
warning("Warning: unknown argument: " + Arg->getSpelling()); warning("warning: unknown argument: " + Arg->getSpelling());
if (Unknowns.begin() != Unknowns.end()) if (Unknowns.begin() != Unknowns.end())
error("Unknown argument(s) found"); error("unknown argument(s) found");
return Args; return Args;
} }

View File

@ -311,7 +311,7 @@ SymbolBody *elf::ObjectFile<ELFT>::createSymbolBody(const Elf_Sym *Sym) {
switch (Binding) { switch (Binding) {
default: default:
fatal("Unexpected binding"); fatal("unexpected binding");
case STB_GLOBAL: case STB_GLOBAL:
case STB_WEAK: case STB_WEAK:
case STB_GNU_UNIQUE: case STB_GNU_UNIQUE:

View File

@ -166,7 +166,7 @@ void ScriptParser::run() {
if (Handler Fn = Cmd.lookup(Tok)) if (Handler Fn = Cmd.lookup(Tok))
(this->*Fn)(); (this->*Fn)();
else else
setError("Unknown directive: " + Tok); setError("unknown directive: " + Tok);
} }
} }
@ -190,7 +190,7 @@ std::vector<StringRef> ScriptParser::tokenize(StringRef S) {
if (S.startswith("\"")) { if (S.startswith("\"")) {
size_t E = S.find("\"", 1); size_t E = S.find("\"", 1);
if (E == StringRef::npos) { if (E == StringRef::npos) {
error("Unclosed quote"); error("unclosed quote");
return {}; return {};
} }
Ret.push_back(S.substr(1, E - 1)); Ret.push_back(S.substr(1, E - 1));
@ -217,7 +217,7 @@ StringRef ScriptParser::skipSpace(StringRef S) {
if (S.startswith("/*")) { if (S.startswith("/*")) {
size_t E = S.find("*/", 2); size_t E = S.find("*/", 2);
if (E == StringRef::npos) { if (E == StringRef::npos) {
error("Unclosed comment in a linker script"); error("unclosed comment in a linker script");
return ""; return "";
} }
S = S.substr(E + 2); S = S.substr(E + 2);
@ -237,7 +237,7 @@ StringRef ScriptParser::next() {
if (Error) if (Error)
return ""; return "";
if (atEOF()) { if (atEOF()) {
setError("Unexpected EOF"); setError("unexpected EOF");
return ""; return "";
} }
return Tokens[Pos++]; return Tokens[Pos++];
@ -255,7 +255,7 @@ bool ScriptParser::skip(StringRef Tok) {
if (Error) if (Error)
return false; return false;
if (atEOF()) { if (atEOF()) {
setError("Unexpected EOF"); setError("unexpected EOF");
return false; return false;
} }
if (Tok != Tokens[Pos]) if (Tok != Tokens[Pos])
@ -352,7 +352,7 @@ void ScriptParser::readInclude() {
StringRef Tok = next(); StringRef Tok = next();
auto MBOrErr = MemoryBuffer::getFile(Tok); auto MBOrErr = MemoryBuffer::getFile(Tok);
if (!MBOrErr) { if (!MBOrErr) {
setError("Cannot open " + Tok); setError("cannot open " + Tok);
return; return;
} }
std::unique_ptr<MemoryBuffer> &MB = *MBOrErr; std::unique_ptr<MemoryBuffer> &MB = *MBOrErr;
@ -385,7 +385,7 @@ void ScriptParser::readOutputFormat() {
if (Tok == ")") if (Tok == ")")
return; return;
if (Tok != ",") { if (Tok != ",") {
setError("Unexpected token: " + Tok); setError("unexpected token: " + Tok);
return; return;
} }
next(); next();

View File

@ -683,7 +683,7 @@ EhFrameHeader<ELFT>::getFdePc(uintX_t EhVA, const FdeData &F) {
PC = read64<E>(F.PCRel); PC = read64<E>(F.PCRel);
break; break;
default: default:
fatal("Unknown FDE size encoding"); fatal("unknown FDE size encoding");
} }
switch (F.Enc & 0x70) { switch (F.Enc & 0x70) {
case DW_EH_PE_absptr: case DW_EH_PE_absptr:
@ -691,7 +691,7 @@ EhFrameHeader<ELFT>::getFdePc(uintX_t EhVA, const FdeData &F) {
case DW_EH_PE_pcrel: case DW_EH_PE_pcrel:
return PC + EhVA + F.Off + 8; return PC + EhVA + F.Off + 8;
default: default:
fatal("Unknown FDE size relative encoding"); fatal("unknown FDE size relative encoding");
} }
} }
@ -966,7 +966,7 @@ Cie<ELFT>::Cie(EHInputSection<ELFT> *S, unsigned Index)
// Read a byte and advance D by one byte. // Read a byte and advance D by one byte.
static uint8_t readByte(ArrayRef<uint8_t> &D) { static uint8_t readByte(ArrayRef<uint8_t> &D) {
if (D.empty()) if (D.empty())
fatal("Corrupted or unsupported CIE information"); fatal("corrupted or unsupported CIE information");
uint8_t B = D.front(); uint8_t B = D.front();
D = D.slice(1); D = D.slice(1);
return B; return B;
@ -979,7 +979,7 @@ static void skipLeb128(ArrayRef<uint8_t> &D) {
if ((Val & 0x80) == 0) if ((Val & 0x80) == 0)
return; return;
} }
fatal("Corrupted or unsupported CIE information"); fatal("corrupted or unsupported CIE information");
} }
template <class ELFT> static size_t getAugPSize(unsigned Enc) { template <class ELFT> static size_t getAugPSize(unsigned Enc) {
@ -997,7 +997,7 @@ template <class ELFT> static size_t getAugPSize(unsigned Enc) {
case DW_EH_PE_sdata8: case DW_EH_PE_sdata8:
return 8; return 8;
} }
fatal("Unknown FDE encoding"); fatal("unknown FDE encoding");
} }
template <class ELFT> static void skipAugP(ArrayRef<uint8_t> &D) { template <class ELFT> static void skipAugP(ArrayRef<uint8_t> &D) {
@ -1006,7 +1006,7 @@ template <class ELFT> static void skipAugP(ArrayRef<uint8_t> &D) {
fatal("DW_EH_PE_aligned encoding is not supported"); fatal("DW_EH_PE_aligned encoding is not supported");
size_t Size = getAugPSize<ELFT>(Enc); size_t Size = getAugPSize<ELFT>(Enc);
if (Size >= D.size()) if (Size >= D.size())
fatal("Corrupted CIE"); fatal("corrupted CIE");
D = D.slice(Size); D = D.slice(Size);
} }
@ -1022,7 +1022,7 @@ uint8_t EHOutputSection<ELFT>::getFdeEncoding(ArrayRef<uint8_t> D) {
const unsigned char *AugEnd = std::find(D.begin() + 1, D.end(), '\0'); const unsigned char *AugEnd = std::find(D.begin() + 1, D.end(), '\0');
if (AugEnd == D.end()) if (AugEnd == D.end())
fatal("Corrupted CIE"); fatal("corrupted CIE");
StringRef Aug(reinterpret_cast<const char *>(D.begin()), AugEnd - D.begin()); StringRef Aug(reinterpret_cast<const char *>(D.begin()), AugEnd - D.begin());
D = D.slice(Aug.size() + 1); D = D.slice(Aug.size() + 1);
@ -1058,7 +1058,7 @@ uint8_t EHOutputSection<ELFT>::getFdeEncoding(ArrayRef<uint8_t> D) {
readByte(D); readByte(D);
continue; continue;
} }
fatal("Unknown .eh_frame augmentation string: " + Aug); fatal("unknown .eh_frame augmentation string: " + Aug);
} }
return DW_EH_PE_absptr; return DW_EH_PE_absptr;
} }

View File

@ -321,7 +321,7 @@ template <class ELFT> void SymbolTable<ELFT>::resolve(SymbolBody *New) {
// equivalent (conflicting), or more preferable, respectively. // equivalent (conflicting), or more preferable, respectively.
int Comp = Existing->compare<ELFT>(New); int Comp = Existing->compare<ELFT>(New);
if (Comp == 0) { if (Comp == 0) {
std::string S = "Duplicate symbol: " + conflictMsg(Existing, New); std::string S = "duplicate symbol: " + conflictMsg(Existing, New);
if (Config->AllowMultipleDefinition) if (Config->AllowMultipleDefinition)
warning(S); warning(S);
else else

View File

@ -535,7 +535,7 @@ void X86TargetInfo::relocateOne(uint8_t *Loc, uint8_t *BufEnd, uint32_t Type,
write32le(Loc, Out<ELF32LE>::TlsPhdr->p_memsz - SA); write32le(Loc, Out<ELF32LE>::TlsPhdr->p_memsz - SA);
break; break;
default: default:
fatal("Unrecognized reloc " + Twine(Type)); fatal("unrecognized reloc " + Twine(Type));
} }
} }
@ -956,7 +956,7 @@ void X86_64TargetInfo::relocateOne(uint8_t *Loc, uint8_t *BufEnd, uint32_t Type,
break; break;
} }
default: default:
fatal("Unrecognized reloc " + Twine(Type)); fatal("unrecognized reloc " + Twine(Type));
} }
} }
@ -986,7 +986,7 @@ void PPCTargetInfo::relocateOne(uint8_t *Loc, uint8_t *BufEnd, uint32_t Type,
write16be(Loc, applyPPCLo(SA)); write16be(Loc, applyPPCLo(SA));
break; break;
default: default:
fatal("Unrecognized reloc " + Twine(Type)); fatal("unrecognized reloc " + Twine(Type));
} }
} }
@ -1194,7 +1194,7 @@ void PPC64TargetInfo::relocateOne(uint8_t *Loc, uint8_t *BufEnd, uint32_t Type,
write64be(Loc, SA); write64be(Loc, SA);
break; break;
default: default:
fatal("Unrecognized reloc " + Twine(Type)); fatal("unrecognized reloc " + Twine(Type));
} }
} }
@ -1457,7 +1457,7 @@ void AArch64TargetInfo::relocateOne(uint8_t *Loc, uint8_t *BufEnd,
break; break;
} }
default: default:
fatal("Unrecognized reloc " + Twine(Type)); fatal("unrecognized reloc " + Twine(Type));
} }
} }
@ -1556,7 +1556,7 @@ void AArch64TargetInfo::relocateTlsIeToLe(uint32_t Type, uint8_t *Loc,
void AMDGPUTargetInfo::relocateOne(uint8_t *Loc, uint8_t *BufEnd, uint32_t Type, void AMDGPUTargetInfo::relocateOne(uint8_t *Loc, uint8_t *BufEnd, uint32_t Type,
uint64_t P, uint64_t SA, uint64_t ZA, uint64_t P, uint64_t SA, uint64_t ZA,
uint8_t *PairedLoc) const { uint8_t *PairedLoc) const {
llvm_unreachable("Not implemented"); llvm_unreachable("not implemented");
} }
template <class ELFT> MipsTargetInfo<ELFT>::MipsTargetInfo() { template <class ELFT> MipsTargetInfo<ELFT>::MipsTargetInfo() {
@ -1773,7 +1773,7 @@ void MipsTargetInfo<ELFT>::relocateOne(uint8_t *Loc, uint8_t *BufEnd,
writeMipsLo16<E>(Loc, S + readSignedLo16<E>(Loc) - P); writeMipsLo16<E>(Loc, S + readSignedLo16<E>(Loc) - P);
break; break;
default: default:
fatal("Unrecognized reloc " + Twine(Type)); fatal("unrecognized reloc " + Twine(Type));
} }
} }

View File

@ -500,7 +500,7 @@ static void reportUndefined(SymbolTable<ELFT> &Symtab, SymbolBody *Sym) {
if ((Config->Relocatable || Config->Shared) && !Config->NoUndefined) if ((Config->Relocatable || Config->Shared) && !Config->NoUndefined)
return; return;
std::string Msg = "Undefined symbol: " + Sym->getName().str(); std::string Msg = "undefined symbol: " + Sym->getName().str();
if (InputFile *File = Symtab.findFile(Sym)) if (InputFile *File = Symtab.findFile(Sym))
Msg += " in " + File->getName().str(); Msg += " in " + File->getName().str();
if (Config->NoinhibitExec) if (Config->NoinhibitExec)
@ -1508,7 +1508,7 @@ template <class ELFT> bool Writer<ELFT>::openFile() {
ErrorOr<std::unique_ptr<FileOutputBuffer>> BufferOrErr = ErrorOr<std::unique_ptr<FileOutputBuffer>> BufferOrErr =
FileOutputBuffer::create(Config->OutputFile, FileSize, FileOutputBuffer::create(Config->OutputFile, FileSize,
FileOutputBuffer::F_executable); FileOutputBuffer::F_executable);
if (error(BufferOrErr, "Failed to open " + Config->OutputFile)) if (error(BufferOrErr, "failed to open " + Config->OutputFile))
return false; return false;
Buffer = std::move(*BufferOrErr); Buffer = std::move(*BufferOrErr);
return true; return true;

View File

@ -192,25 +192,25 @@ _start:
# RUN: not ld.lld %t.foo -o %t2 2>&1 | \ # RUN: not ld.lld %t.foo -o %t2 2>&1 | \
# RUN: FileCheck --check-prefix=MISSING %s # RUN: FileCheck --check-prefix=MISSING %s
# MISSING: Cannot open {{.*}}.foo: {{[Nn]}}o such file or directory # MISSING: cannot open {{.*}}.foo: {{[Nn]}}o such file or directory
# RUN: not ld.lld -o %t2 2>&1 | \ # RUN: not ld.lld -o %t2 2>&1 | \
# RUN: FileCheck --check-prefix=NO_INPUT %s # RUN: FileCheck --check-prefix=NO_INPUT %s
# NO_INPUT: No input files # NO_INPUT: no input files.
# RUN: not ld.lld %t.no.such.file -o %t2 2>&1 | \ # RUN: not ld.lld %t.no.such.file -o %t2 2>&1 | \
# RUN: FileCheck --check-prefix=CANNOT_OPEN %s # RUN: FileCheck --check-prefix=CANNOT_OPEN %s
# CANNOT_OPEN: Cannot open {{.*}}.no.such.file: {{[Nn]}}o such file or directory # CANNOT_OPEN: cannot open {{.*}}.no.such.file: {{[Nn]}}o such file or directory
# RUN: not ld.lld %t -o 2>&1 | FileCheck --check-prefix=NO_O_VAL %s # RUN: not ld.lld %t -o 2>&1 | FileCheck --check-prefix=NO_O_VAL %s
# NO_O_VAL: Missing arg value for "-o", expected 1 argument. # NO_O_VAL: missing arg value for "-o", expected 1 argument.
# RUN: not ld.lld --foo 2>&1 | FileCheck --check-prefix=UNKNOWN %s # RUN: not ld.lld --foo 2>&1 | FileCheck --check-prefix=UNKNOWN %s
# UNKNOWN: Warning: unknown argument: --foo # UNKNOWN: unknown argument: --foo
# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
# RUN: not ld.lld %t %t -o %t2 2>&1 | FileCheck --check-prefix=DUP %s # RUN: not ld.lld %t %t -o %t2 2>&1 | FileCheck --check-prefix=DUP %s
# DUP: Duplicate symbol: _start in {{.*}} and {{.*}} # DUP: duplicate symbol: _start in {{.*}} and {{.*}}
# RUN: not ld.lld %t -o %t -m wrong_emul 2>&1 | FileCheck --check-prefix=UNKNOWN_EMUL %s # RUN: not ld.lld %t -o %t -m wrong_emul 2>&1 | FileCheck --check-prefix=UNKNOWN_EMUL %s
# UNKNOWN_EMUL: Unknown emulation: wrong_emul # UNKNOWN_EMUL: Unknown emulation: wrong_emul

View File

@ -3,20 +3,20 @@
# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t1.o # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t1.o
# RUN: not ld.lld %t1.o %t1.o -o %t2 2>&1 | FileCheck -check-prefix=DEMANGLE %s # RUN: not ld.lld %t1.o %t1.o -o %t2 2>&1 | FileCheck -check-prefix=DEMANGLE %s
# DEMANGLE: Duplicate symbol: {{mul\(double, double\)|_Z3muldd}} in # DEMANGLE: duplicate symbol: {{mul\(double, double\)|_Z3muldd}} in
# DEMANGLE: Duplicate symbol: foo in # DEMANGLE: duplicate symbol: foo in
# RUN: not ld.lld %t1.o %t1.o -o %t2 --no-demangle 2>&1 | \ # RUN: not ld.lld %t1.o %t1.o -o %t2 --no-demangle 2>&1 | \
# RUN: FileCheck -check-prefix=NO_DEMANGLE %s # RUN: FileCheck -check-prefix=NO_DEMANGLE %s
# NO_DEMANGLE: Duplicate symbol: _Z3muldd in # NO_DEMANGLE: duplicate symbol: _Z3muldd in
# NO_DEMANGLE: Duplicate symbol: foo in # NO_DEMANGLE: duplicate symbol: foo in
# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %S/Inputs/conflict.s -o %t2.o # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %S/Inputs/conflict.s -o %t2.o
# RUN: llvm-ar rcs %t3.a %t2.o # RUN: llvm-ar rcs %t3.a %t2.o
# RUN: not ld.lld %t1.o %t3.a -u baz -o %t2 2>&1 | FileCheck -check-prefix=ARCHIVE %s # RUN: not ld.lld %t1.o %t3.a -u baz -o %t2 2>&1 | FileCheck -check-prefix=ARCHIVE %s
# ARCHIVE: Duplicate symbol: foo in {{.*}}1.o and {{.*}}3.a({{.*}}2.o) # ARCHIVE: duplicate symbol: foo in {{.*}}1.o and {{.*}}3.a({{.*}}2.o)
.globl _Z3muldd, foo .globl _Z3muldd, foo
_Z3muldd: _Z3muldd:

View File

@ -3,16 +3,16 @@
# RUN: not ld.lld --unknown1 --unknown2 -m foo /no/such/file -lnosuchlib \ # RUN: not ld.lld --unknown1 --unknown2 -m foo /no/such/file -lnosuchlib \
# RUN: 2>&1 | FileCheck -check-prefix=UNKNOWN %s # RUN: 2>&1 | FileCheck -check-prefix=UNKNOWN %s
# UNKNOWN: Warning: unknown argument: --unknown1 # UNKNOWN: warning: unknown argument: --unknown1
# UNKNOWN: Warning: unknown argument: --unknown2 # UNKNOWN: warning: unknown argument: --unknown2
# UNKNOWN: Unknown argument(s) found # UNKNOWN: unknown argument(s) found
# UNKNOWN: Unknown emulation: foo # UNKNOWN: Unknown emulation: foo
# UNKNOWN: Cannot open /no/such/file # UNKNOWN: cannot open /no/such/file
# UNKNOWN: Unable to find library -lnosuchlib # UNKNOWN: Unable to find library -lnosuchlib
# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
# RUN: not ld.lld %t -o /no/such/file 2>&1 | FileCheck -check-prefix=MISSING %s # RUN: not ld.lld %t -o /no/such/file 2>&1 | FileCheck -check-prefix=MISSING %s
# MISSING: Failed to open /no/such/file # MISSING: failed to open /no/such/file
# RUN: ld.lld --help 2>&1 | FileCheck -check-prefix=HELP %s # RUN: ld.lld --help 2>&1 | FileCheck -check-prefix=HELP %s
# HELP: USAGE: # HELP: USAGE:

View File

@ -3,7 +3,7 @@
# RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux %s -o %t.o # RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux %s -o %t.o
# RUN: not ld.lld -shared %t.o -o %t.so 2>&1 | FileCheck %s # RUN: not ld.lld -shared %t.o -o %t.so 2>&1 | FileCheck %s
# CHECK: Duplicate symbol: _gp in (internal) and {{.*}} # CHECK: duplicate symbol: _gp in (internal) and {{.*}}
# REQUIRES: mips # REQUIRES: mips

View File

@ -14,7 +14,7 @@
# RUN: not ld.lld %p/Inputs/invalid-binding.elf -o %t2 2>&1 | \ # RUN: not ld.lld %p/Inputs/invalid-binding.elf -o %t2 2>&1 | \
# RUN: FileCheck --check-prefix=INVALID-BINDING %s # RUN: FileCheck --check-prefix=INVALID-BINDING %s
# INVALID-BINDING: Unexpected binding # INVALID-BINDING: unexpected binding
# RUN: not ld.lld %p/Inputs/invalid-section-index.elf -o %t2 2>&1 | \ # RUN: not ld.lld %p/Inputs/invalid-section-index.elf -o %t2 2>&1 | \
# RUN: FileCheck --check-prefix=INVALID-SECTION-INDEX %s # RUN: FileCheck --check-prefix=INVALID-SECTION-INDEX %s

View File

@ -15,40 +15,40 @@
# RUN: echo foobar > %t1 # RUN: echo foobar > %t1
# RUN: not ld.lld %t1 no-such-file 2>&1 | FileCheck -check-prefix=ERR1 %s # RUN: not ld.lld %t1 no-such-file 2>&1 | FileCheck -check-prefix=ERR1 %s
# ERR1: Unknown directive: foobar # ERR1: unknown directive: foobar
# ERR1: Cannot open no-such-file: # ERR1: cannot open no-such-file:
# RUN: echo "foo \"bar" > %t2 # RUN: echo "foo \"bar" > %t2
# RUN: not ld.lld %t2 no-such-file 2>&1 | FileCheck -check-prefix=ERR2 %s # RUN: not ld.lld %t2 no-such-file 2>&1 | FileCheck -check-prefix=ERR2 %s
# ERR2: Unclosed quote # ERR2: unclosed quote
# ERR2: Cannot open no-such-file: # ERR2: cannot open no-such-file:
# RUN: echo "/*" > %t3 # RUN: echo "/*" > %t3
# RUN: not ld.lld %t3 no-such-file 2>&1 | FileCheck -check-prefix=ERR3 %s # RUN: not ld.lld %t3 no-such-file 2>&1 | FileCheck -check-prefix=ERR3 %s
# ERR3: Unclosed comment # ERR3: unclosed comment
# ERR3: Cannot open no-such-file: # ERR3: cannot open no-such-file:
# RUN: echo "EXTERN (" > %t4 # RUN: echo "EXTERN (" > %t4
# RUN: not ld.lld %t4 no-such-file 2>&1 | FileCheck -check-prefix=ERR4 %s # RUN: not ld.lld %t4 no-such-file 2>&1 | FileCheck -check-prefix=ERR4 %s
# ERR4: Unexpected EOF # ERR4: unexpected EOF
# ERR4: Cannot open no-such-file: # ERR4: cannot open no-such-file:
# RUN: echo "EXTERN (" > %t5 # RUN: echo "EXTERN (" > %t5
# RUN: not ld.lld %t5 no-such-file 2>&1 | FileCheck -check-prefix=ERR5 %s # RUN: not ld.lld %t5 no-such-file 2>&1 | FileCheck -check-prefix=ERR5 %s
# ERR5: Unexpected EOF # ERR5: unexpected EOF
# ERR5: Cannot open no-such-file: # ERR5: cannot open no-such-file:
# RUN: echo "EXTERN xyz" > %t6 # RUN: echo "EXTERN xyz" > %t6
# RUN: not ld.lld %t6 no-such-file 2>&1 | FileCheck -check-prefix=ERR6 %s # RUN: not ld.lld %t6 no-such-file 2>&1 | FileCheck -check-prefix=ERR6 %s
# ERR6: ( expected, but got xyz # ERR6: ( expected, but got xyz
# ERR6: Cannot open no-such-file: # ERR6: cannot open no-such-file:
# RUN: echo "INCLUDE /no/such/file" > %t7 # RUN: echo "INCLUDE /no/such/file" > %t7
# RUN: not ld.lld %t7 no-such-file 2>&1 | FileCheck -check-prefix=ERR7 %s # RUN: not ld.lld %t7 no-such-file 2>&1 | FileCheck -check-prefix=ERR7 %s
# ERR7: Cannot open /no/such/file # ERR7: cannot open /no/such/file
# ERR7: Cannot open no-such-file: # ERR7: cannot open no-such-file:
# RUN: echo "OUTPUT_FORMAT(x y z)" > %t8 # RUN: echo "OUTPUT_FORMAT(x y z)" > %t8
# RUN: not ld.lld %t8 no-such-file 2>&1 | FileCheck -check-prefix=ERR8 %s # RUN: not ld.lld %t8 no-such-file 2>&1 | FileCheck -check-prefix=ERR8 %s
# ERR8: Unexpected token: y # ERR8: unexpected token: y
# ERR8: Cannot open no-such-file: # ERR8: cannot open no-such-file:

View File

@ -13,12 +13,12 @@
// Should fail if no library specified // Should fail if no library specified
// RUN: not ld.lld -l 2>&1 \ // RUN: not ld.lld -l 2>&1 \
// RUN: | FileCheck --check-prefix=NOLIBRARY %s // RUN: | FileCheck --check-prefix=NOLIBRARY %s
// NOLIBRARY: Missing arg value for "-l", expected 1 argument. // NOLIBRARY: missing arg value for "-l", expected 1 argument.
// Should not link because of undefined symbol _bar // Should not link because of undefined symbol _bar
// RUN: not ld.lld -o %t3 %t.o 2>&1 \ // RUN: not ld.lld -o %t3 %t.o 2>&1 \
// RUN: | FileCheck --check-prefix=UNDEFINED %s // RUN: | FileCheck --check-prefix=UNDEFINED %s
// UNDEFINED: Undefined symbol: _bar // UNDEFINED: undefined symbol: _bar
// Should fail if cannot find specified library (without -L switch) // Should fail if cannot find specified library (without -L switch)
// RUN: not ld.lld -o %t3 %t.o -lls 2>&1 \ // RUN: not ld.lld -o %t3 %t.o -lls 2>&1 \

View File

@ -58,7 +58,7 @@
# RUN: not ld.lld -o %t2 %t.script %t > %t.log 2>&1 # RUN: not ld.lld -o %t2 %t.script %t > %t.log 2>&1
# RUN: FileCheck -check-prefix=ERR-ENTRY %s < %t.log # RUN: FileCheck -check-prefix=ERR-ENTRY %s < %t.log
# ERR-ENTRY: Undefined symbol: _wrong_label # ERR-ENTRY: undefined symbol: _wrong_label
# -e has precedence over linker script's ENTRY. # -e has precedence over linker script's ENTRY.
# RUN: echo "ENTRY(_label)" > %t.script # RUN: echo "ENTRY(_label)" > %t.script
@ -104,7 +104,7 @@
# RUN: not ld.lld -o foo %t.script > %t.log 2>&1 # RUN: not ld.lld -o foo %t.script > %t.log 2>&1
# RUN: FileCheck -check-prefix=ERR1 %s < %t.log # RUN: FileCheck -check-prefix=ERR1 %s < %t.log
# ERR1: Unknown directive: FOO # ERR1: unknown directive: FOO
.globl _start, _label; .globl _start, _label;
_start: _start:

View File

@ -1,7 +1,7 @@
; REQUIRES: x86 ; REQUIRES: x86
; RUN: llvm-as %s -o %t.o ; RUN: llvm-as %s -o %t.o
; RUN: not ld.lld -m elf_x86_64 %t.o %t.o -o %t.so -shared 2>&1 | FileCheck %s ; RUN: not ld.lld -m elf_x86_64 %t.o %t.o -o %t.so -shared 2>&1 | FileCheck %s
; CHECK: Duplicate symbol: f in {{.*}}.o and {{.*}}.o ; CHECK: duplicate symbol: f in {{.*}}.o and {{.*}}.o
target triple = "x86_64-unknown-linux-gnu" target triple = "x86_64-unknown-linux-gnu"
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"

View File

@ -9,7 +9,7 @@
// Should not link because of undefined symbol _bar // Should not link because of undefined symbol _bar
// RUN: not ld.lld -o %t/r %t/m.o 2>&1 \ // RUN: not ld.lld -o %t/r %t/m.o 2>&1 \
// RUN: | FileCheck --check-prefix=UNDEFINED %s // RUN: | FileCheck --check-prefix=UNDEFINED %s
// UNDEFINED: Undefined symbol: _bar // UNDEFINED: undefined symbol: _bar
// We need to be sure that there is no suitable library in the /lib directory // We need to be sure that there is no suitable library in the /lib directory
// RUN: not ld.lld -o %t/r %t/m.o -L/lib -l:libls.a 2>&1 \ // RUN: not ld.lld -o %t/r %t/m.o -L/lib -l:libls.a 2>&1 \

View File

@ -10,4 +10,4 @@
_start: _start:
call __tls_get_addr call __tls_get_addr
// CHECK: Undefined symbol: __tls_get_addr // CHECK: undefined symbol: __tls_get_addr

View File

@ -1,4 +1,4 @@
# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
# RUN: not ld.lld %t -o %t2 2>&1 | FileCheck %s # RUN: not ld.lld %t -o %t2 2>&1 | FileCheck %s
# CHECK: Undefined symbol: _start # CHECK: undefined symbol: _start
# REQUIRES: x86 # REQUIRES: x86

View File

@ -1,7 +1,7 @@
# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t # RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
# RUN: not ld.lld %t -o %t2 2>&1 | FileCheck %s # RUN: not ld.lld %t -o %t2 2>&1 | FileCheck %s
# CHECK: Undefined symbol: bar in {{.*}} # CHECK: undefined symbol: bar in {{.*}}
# CHECK: Undefined symbol: foo in {{.*}} # CHECK: undefined symbol: foo in {{.*}}
# REQUIRES: x86 # REQUIRES: x86
.globl _start .globl _start