Files
clang-p2996/lld/test/ELF/error-limit-no-newlines.s
Alexander Richardson a8104b4927 [LLD] Do not print additional newlines after reaching error limit
Summary:
This could previously happen if errors that are emitted after reaching the
error limit. In that case, the flag inside the newline() function will be
set to true which causes the next call to print a newline even though the
actual message will be discarded.

Reviewers: ruiu, grimar, MaskRay, espindola

Reviewed By: ruiu

Subscribers: emaste, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D65198

llvm-svn: 366944
2019-07-24 20:56:23 +00:00

25 lines
658 B
ArmAsm

# REQUIRES: x86
# RUN: llvm-mc -filetype=obj -triple=x86_64 %s -o %t1.o
# RUN: not ld.lld --error-limit=1 %t1.o %t1.o %t1.o -o /dev/null 2>%t.output
# RUN: echo "END" >> %t.output
# RUN: FileCheck %s -input-file=%t.output
# CHECK: error: duplicate symbol: _start
# CHECK-NEXT: >>> defined at {{.*}}1.o:(.text+0x0)
# CHECK-NEXT: >>> defined at {{.*}}1.o:(.text+0x0)
# CHECK-EMPTY:
# CHECK-NEXT: ld.lld: error: too many errors emitted, stopping now (use -error-limit=0 to see all errors)
## Ensure that there isn't an additional newline before the next message:
# CHECK-NEXT: END
.globl _start
_start:
nop
.globl foo
foo:
nop
.globl bar
bar:
nop