1 // RUN: %clang -fcolor-diagnostics -### -c %s 2>&1 \
2 // RUN: | FileCheck --check-prefix=CHECK-CD %s
3 // CHECK-CD: "-cc1"{{.*}} "-fcolor-diagnostics"
5 // RUN: %clang -fno-color-diagnostics -### -c %s 2>&1 \
6 // RUN: | FileCheck --check-prefix=CHECK-NCD %s
7 // CHECK-NCD-NOT: "-cc1"{{.*}} "-fcolor-diagnostics"
9 // RUN: %clang -fdiagnostics-color -### -c %s 2>&1 \
10 // RUN: | FileCheck --check-prefix=CHECK-DC %s
11 // CHECK-DC: "-cc1"{{.*}} "-fcolor-diagnostics"
13 // RUN: %clang -fno-diagnostics-color -### -c %s 2>&1 \
14 // RUN: | FileCheck --check-prefix=CHECK-NDC %s
15 // CHECK-NDC-NOT: "-cc1"{{.*}} "-fcolor-diagnostics"
17 // RUN: %clang -fdiagnostics-color=always -### -c %s 2>&1 \
18 // RUN: | FileCheck --check-prefix=CHECK-DCE_A %s
19 // CHECK-DCE_A: "-cc1"{{.*}} "-fcolor-diagnostics"
21 // RUN: %clang -fdiagnostics-color=never -### -c %s 2>&1 \
22 // RUN: | FileCheck --check-prefix=CHECK-DCE_N %s
23 // CHECK-DCE_N-NOT: "-cc1"{{.*}} "-fcolor-diagnostics"
25 // The test doesn't run in a PTY, so "auto" defaults to off.
26 // RUN: %clang -fdiagnostics-color=auto -### -c %s 2>&1 \
27 // RUN: | FileCheck --check-prefix=CHECK-DCE_AUTO %s
28 // CHECK-DCE_AUTO-NOT: "-cc1"{{.*}} "-fcolor-diagnostics"
30 // RUN: not %clang -fdiagnostics-color=foo -### -c %s 2>&1 \
31 // RUN: | FileCheck --check-prefix=CHECK-DCE_FOO %s
32 // CHECK-DCE_FOO: error: invalid argument 'foo' to -fdiagnostics-color=
34 // Check that the last flag wins.
35 // RUN: %clang -fno-color-diagnostics -fdiagnostics-color -### -c %s 2>&1 \
36 // RUN: | FileCheck --check-prefix=CHECK-NCD_DC_S %s
37 // CHECK-NCD_DC_S: "-cc1"{{.*}} "-fcolor-diagnostics"
39 // RUN: %clang -fcolor-diagnostics -fno-diagnostics-color -### -c %s 2>&1 \
40 // RUN: | FileCheck --check-prefix=CHECK-CD_NDC_S %s
41 // CHECK-CD_NDC_S-NOT: "-cc1"{{.*}} "-fcolor-diagnostics"
43 // RUN: %clang -fdiagnostics-color -fno-color-diagnostics -### -c %s 2>&1 \
44 // RUN: | FileCheck --check-prefix=CHECK-DC_NCD_S %s
45 // CHECK-DC_NCD_S-NOT: "-cc1"{{.*}} "-fcolor-diagnostics"
47 // RUN: %clang -fno-diagnostics-color -fcolor-diagnostics -### -c %s 2>&1 \
48 // RUN: | FileCheck --check-prefix=CHECK-NDC_CD_S %s
49 // CHECK-NDC_CD_S: "-cc1"{{.*}} "-fcolor-diagnostics"
51 // RUN: %clang -fcolor-diagnostics -fdiagnostics-color=auto -### -c %s 2>&1 \
52 // RUN: | FileCheck --check-prefix=CHECK-CD_DCE_AUTO_S %s
53 // CHECK-CD_DCE_AUTO_S-NOT: "-cc1"{{.*}} "-fcolor-diagnostics"
55 // RUN: %clang -fansi-escape-codes -### -c %s 2>&1 \
56 // RUN: | FileCheck --check-prefix=CHECK-AEC %s
57 // CHECK-AEC: "-cc1"{{.*}} "-fansi-escape-codes"