xref: /llvm-project/clang/test/Driver/cl-diagnostics.c (revision 1d4cde62832ac8cd8d4955a864bc794523f932d9)
12918a200SReid Kleckner // Note: %s must be preceded by --, otherwise it may be interpreted as a
22918a200SReid Kleckner // command-line option, e.g. on Mac where %s is commonly under /Users.
32918a200SReid Kleckner 
42918a200SReid Kleckner // RUN: %clang_cl /diagnostics:classic -### -- %s 2>&1 | FileCheck %s --check-prefix=CLASSIC
52918a200SReid Kleckner // CLASSIC: -fno-caret-diagnostics
62918a200SReid Kleckner // CLASSIC: -fno-show-column
72918a200SReid Kleckner 
82918a200SReid Kleckner // RUN: %clang_cl /diagnostics:column -### -- %s 2>&1 | FileCheck %s --check-prefix=COLUMN
92918a200SReid Kleckner // COLUMN: -fno-caret-diagnostics
102918a200SReid Kleckner // COLUMN-NOT: -fno-show-column
112918a200SReid Kleckner 
122918a200SReid Kleckner // RUN: %clang_cl /diagnostics:caret -### -- %s 2>&1 | FileCheck %s --check-prefix=CARET
132918a200SReid Kleckner // CARET-NOT: -fno-caret-diagnostics
142918a200SReid Kleckner // CARET-NOT: -fno-show-column
152918a200SReid Kleckner 
16*1d4cde62SReid Kleckner // RUN: not %clang_cl -fms-compatibility-version=19  /diagnostics:classic /Zs -c -- %s 2>&1 | FileCheck %s --check-prefix=OUTPUT_CLASSIC
172918a200SReid Kleckner 
182918a200SReid Kleckner // OUTPUT_CLASSIC: cl-diagnostics.c({{[0-9]+}}): error: "asdf"
192918a200SReid Kleckner // OUTPUT_CLASSIC-NOT: #error
202918a200SReid Kleckner 
21*1d4cde62SReid Kleckner // RUN: not %clang_cl -fms-compatibility-version=19 /diagnostics:caret /Zs -c -- %s 2>&1 | FileCheck %s --check-prefix=OUTPUT_CARET
222918a200SReid Kleckner 
232918a200SReid Kleckner // OUTPUT_CARET: cl-diagnostics.c({{[0-9]+,[0-9]+}}): error: "asdf"
242918a200SReid Kleckner // OUTPUT_CARET-NEXT: #error "asdf"
252918a200SReid Kleckner // OUTPUT_CARET-NEXT: ^
262918a200SReid Kleckner 
272918a200SReid Kleckner 
282918a200SReid Kleckner #error "asdf"
29