diff options
Diffstat (limited to 'clang/test/Driver')
-rw-r--r-- | clang/test/Driver/Inputs/stdc-predef/usr/include/stdc-predef.h | 12 | ||||
-rw-r--r-- | clang/test/Driver/crash-report-header.h | 2 | ||||
-rw-r--r-- | clang/test/Driver/crash-report-spaces.c | 2 | ||||
-rw-r--r-- | clang/test/Driver/crash-report.c | 3 | ||||
-rw-r--r-- | clang/test/Driver/rewrite-map-in-diagnostics.c | 2 | ||||
-rw-r--r-- | clang/test/Driver/stdc-predef.c | 25 | ||||
-rw-r--r-- | clang/test/Driver/stdc-predef.i | 16 |
7 files changed, 58 insertions, 4 deletions
diff --git a/clang/test/Driver/Inputs/stdc-predef/usr/include/stdc-predef.h b/clang/test/Driver/Inputs/stdc-predef/usr/include/stdc-predef.h new file mode 100644 index 00000000000..ddf0103beca --- /dev/null +++ b/clang/test/Driver/Inputs/stdc-predef/usr/include/stdc-predef.h @@ -0,0 +1,12 @@ +#ifndef _STDC_PREDEF_H +#define _STDC_PREDEF_H 1 + +#define DUMMY_STDC_PREDEF 1 + +#endif +#ifndef _STDC_PREDEF_H +#define _STDC_PREDEF_H 1 + +#define DUMMY_STDC_PREDEF 1 + +#endif diff --git a/clang/test/Driver/crash-report-header.h b/clang/test/Driver/crash-report-header.h index e0193cbe45e..97dcdf9348b 100644 --- a/clang/test/Driver/crash-report-header.h +++ b/clang/test/Driver/crash-report-header.h @@ -1,6 +1,6 @@ // RUN: rm -rf %t // RUN: mkdir %t -// RUN: not env TMPDIR="%t" TEMP="%t" TMP="%t" RC_DEBUG_OPTIONS=1 %clang -fsyntax-only %s 2>&1 | FileCheck %s +// RUN: not env TMPDIR="%t" TEMP="%t" TMP="%t" RC_DEBUG_OPTIONS=1 %clang -ffreestanding -fsyntax-only %s 2>&1 | FileCheck %s // RUN: cat %t/crash-report-header-*.h | FileCheck --check-prefix=CHECKSRC "%s" // RUN: cat %t/crash-report-header-*.sh | FileCheck --check-prefix=CHECKSH "%s" // REQUIRES: crash-recovery diff --git a/clang/test/Driver/crash-report-spaces.c b/clang/test/Driver/crash-report-spaces.c index 3e95a0de251..8433884ff95 100644 --- a/clang/test/Driver/crash-report-spaces.c +++ b/clang/test/Driver/crash-report-spaces.c @@ -1,7 +1,7 @@ // RUN: rm -rf "%t" // RUN: mkdir "%t" // RUN: cp "%s" "%t/crash report spaces.c" -// RUN: not env TMPDIR="%t" TEMP="%t" TMP="%t" RC_DEBUG_OPTIONS=1 %clang -fsyntax-only "%t/crash report spaces.c" 2>&1 | FileCheck "%s" +// RUN: not env TMPDIR="%t" TEMP="%t" TMP="%t" RC_DEBUG_OPTIONS=1 %clang -ffreestanding -fsyntax-only "%t/crash report spaces.c" 2>&1 | FileCheck "%s" // RUN: cat "%t/crash report spaces"-*.c | FileCheck --check-prefix=CHECKSRC "%s" // RUN: cat "%t/crash report spaces"-*.sh | FileCheck --check-prefix=CHECKSH "%s" // REQUIRES: crash-recovery diff --git a/clang/test/Driver/crash-report.c b/clang/test/Driver/crash-report.c index a3f1f9e72a5..af7b245e626 100644 --- a/clang/test/Driver/crash-report.c +++ b/clang/test/Driver/crash-report.c @@ -2,7 +2,7 @@ // RUN: mkdir %t // RUN: not env TMPDIR=%t TEMP=%t TMP=%t RC_DEBUG_OPTIONS=1 \ // RUN: CC_PRINT_HEADERS=1 CC_LOG_DIAGNOSTICS=1 \ -// RUN: %clang -fsyntax-only %s \ +// RUN: %clang -fsyntax-only -ffreestanding %s \ // RUN: -F/tmp/ -I /tmp/ -idirafter /tmp/ -iquote /tmp/ -isystem /tmp/ \ // RUN: -iprefix /the/prefix -iwithprefix /tmp -iwithprefixbefore /tmp/ \ // RUN: -Xclang -internal-isystem -Xclang /tmp/ \ @@ -42,5 +42,6 @@ FOO // CHECKSH-NOT: "-iwithprefixbefore" "/tmp/" // CHECKSH-NOT: "-internal-isystem" "/tmp/" // CHECKSH-NOT: "-internal-externc-isystem" "/tmp/" +// CHECKSH-NOT: "-fsystem-include-if-exists" "/tmp/" // CHECKSH-NOT: "-dwarf-debug-flags" // CHECKSH: "crash-report-{{[^ ]*}}.c" diff --git a/clang/test/Driver/rewrite-map-in-diagnostics.c b/clang/test/Driver/rewrite-map-in-diagnostics.c index 4aea0ec0314..cb08830ef2f 100644 --- a/clang/test/Driver/rewrite-map-in-diagnostics.c +++ b/clang/test/Driver/rewrite-map-in-diagnostics.c @@ -1,7 +1,7 @@ // RUN: rm -rf "%t" // RUN: mkdir -p "%t" // RUN: not env TMPDIR="%t" TEMP="%t" TMP="%t" RC_DEBUG_OPTION=1 \ -// RUN: %clang -fsyntax-only -frewrite-map-file %p/Inputs/rewrite.map %s 2>&1 \ +// RUN: %clang -ffreestanding -fsyntax-only -frewrite-map-file %p/Inputs/rewrite.map %s 2>&1 \ // RUN: | FileCheck %s #pragma clang __debug parser_crash diff --git a/clang/test/Driver/stdc-predef.c b/clang/test/Driver/stdc-predef.c new file mode 100644 index 00000000000..48dce2448ff --- /dev/null +++ b/clang/test/Driver/stdc-predef.c @@ -0,0 +1,25 @@ +// Test that clang preincludes stdc-predef.h, if the include file is available +// +// RUN: %clang %s -### -c 2>&1 \ +// RUN: --sysroot=%S/Inputs/stdc-predef \ +// RUN: | FileCheck -check-prefix CHECK-PREDEF %s +// RUN: %clang %s -### -c -ffreestanding 2>&1 \ +// RUN: --sysroot=%S/Inputs/stdc-predef \ +// RUN: | FileCheck --implicit-check-not "stdc-predef.h" %s +// RUN: %clang %s -c -E 2>&1 \ +// RUN: --sysroot=%S/Inputs/basic_linux_tree \ +// RUN: | FileCheck --implicit-check-not "stdc-predef.h" %s +// RUN: %clang -c %s -Xclang -verify -DCHECK_DUMMY=1 \ +// RUN: --sysroot=%S/Inputs/stdc-predef +// expected-no-diagnostics +// RUN: %clang -x cpp-output %s -### -c 2>&1 \ +// RUN: --sysroot=%S/Inputs/stdc-predef \ +// RUN: | FileCheck --implicit-check-not "stdc-predef.h" %s + +// CHECK-PREDEF: "-fsystem-include-if-exists" "stdc-predef.h" +int i; +#if CHECK_DUMMY +#if !DUMMY_STDC_PREDEF + #error "Expected macro symbol DUMMY_STDC_PREDEF is not defined." +#endif +#endif diff --git a/clang/test/Driver/stdc-predef.i b/clang/test/Driver/stdc-predef.i new file mode 100644 index 00000000000..63ed3d275b7 --- /dev/null +++ b/clang/test/Driver/stdc-predef.i @@ -0,0 +1,16 @@ +// The automatic preinclude of stdc-predef.h should not occur if +// the source filename indicates a preprocessed file. +// +// RUN: %clang %s -### -c 2>&1 \ +// RUN: --sysroot=%S/Inputs/stdc-predef \ +// RUN: | FileCheck --implicit-check-not "stdc-predef.h" %s + +int i; +// The automatic preinclude of stdc-predef.h should not occur if +// the source filename indicates a preprocessed file. +// +// RUN: %clang %s -### -c 2>&1 \ +// RUN: --sysroot=%S/Inputs/stdc-predef \ +// RUN: | FileCheck --implicit-check-not "stdc-predef.h" %s + +int i; |