diff options
Diffstat (limited to 'test/Preprocessor')
-rw-r--r-- | test/Preprocessor/assembler-with-cpp.c | 4 | ||||
-rw-r--r-- | test/Preprocessor/cxx_true.cpp | 6 | ||||
-rw-r--r-- | test/Preprocessor/feature_tests.c | 4 | ||||
-rw-r--r-- | test/Preprocessor/init.c | 101 | ||||
-rw-r--r-- | test/Preprocessor/line-directive.c | 2 | ||||
-rw-r--r-- | test/Preprocessor/macro_paste_bcpl_comment.c | 2 | ||||
-rw-r--r-- | test/Preprocessor/stdint.c | 37 |
7 files changed, 131 insertions, 25 deletions
diff --git a/test/Preprocessor/assembler-with-cpp.c b/test/Preprocessor/assembler-with-cpp.c index 693d5b8..17880c8 100644 --- a/test/Preprocessor/assembler-with-cpp.c +++ b/test/Preprocessor/assembler-with-cpp.c @@ -1,4 +1,4 @@ -// RUN: clang-cc -x assembler-with-cpp -fdollars-in-identifiers=0 -E %s -o - | FileCheck -strict-whitespace -check-prefix=CHECK-Identifiers-False %s +// RUN: clang-cc -x assembler-with-cpp -E %s -o - | FileCheck -strict-whitespace -check-prefix=CHECK-Identifiers-False %s #ifndef __ASSEMBLER__ #error "__ASSEMBLER__ not defined" @@ -49,7 +49,7 @@ 6: FOO(blarg) // CHECK-Identifiers-False: 6: blarg $foo -// RUN: clang-cc -x assembler-with-cpp -fdollars-in-identifiers=1 -E %s -o - | FileCheck -check-prefix=CHECK-Identifiers-True -strict-whitespace %s +// RUN: clang-cc -x assembler-with-cpp -fdollars-in-identifiers -E %s -o - | FileCheck -check-prefix=CHECK-Identifiers-True -strict-whitespace %s #define FOO(name) name ## $foo 7: FOO(blarg) // CHECK-Identifiers-True: 7: blarg$foo diff --git a/test/Preprocessor/cxx_true.cpp b/test/Preprocessor/cxx_true.cpp index 80aa04e..bca70c5 100644 --- a/test/Preprocessor/cxx_true.cpp +++ b/test/Preprocessor/cxx_true.cpp @@ -1,6 +1,6 @@ -/* RUN: clang-cc -E %s -x=c++ | grep block_1 - RUN: clang-cc -E %s -x=c++ | not grep block_2 - RUN: clang-cc -E %s -x=c | not grep block +/* RUN: clang-cc -E %s -x c++ | grep block_1 + RUN: clang-cc -E %s -x c++ | not grep block_2 + RUN: clang-cc -E %s -x c | not grep block */ #if true diff --git a/test/Preprocessor/feature_tests.c b/test/Preprocessor/feature_tests.c index dbfde4b..9ccff0e 100644 --- a/test/Preprocessor/feature_tests.c +++ b/test/Preprocessor/feature_tests.c @@ -1,5 +1,5 @@ -// RUN: clang-cc %s --triple=i686-apple-darwin9 -// RUN: clang-cc %s -E --triple=i686-apple-darwin9 +// RUN: clang-cc %s -triple=i686-apple-darwin9 +// RUN: clang-cc %s -E -triple=i686-apple-darwin9 #ifndef __has_feature #error Should have __has_feature #endif diff --git a/test/Preprocessor/init.c b/test/Preprocessor/init.c index aae218d..163734e 100644 --- a/test/Preprocessor/init.c +++ b/test/Preprocessor/init.c @@ -1,4 +1,4 @@ -// RUN: clang-cc -E -dM -x=assembler-with-cpp < /dev/null | FileCheck -check-prefix ASM %s +// RUN: clang-cc -E -dM -x assembler-with-cpp < /dev/null | FileCheck -check-prefix ASM %s // // ASM:#define __ASSEMBLER__ 1 // @@ -9,7 +9,7 @@ // BLOCKS:#define __block __attribute__((__blocks__(byref))) // // -// RUN: clang-cc -x=c++ -std=c++0x -E -dM < /dev/null | FileCheck -check-prefix CXX0X %s +// RUN: clang-cc -x c++ -std=c++0x -E -dM < /dev/null | FileCheck -check-prefix CXX0X %s // // CXX0X:#define _GNU_SOURCE 1 // CXX0X:#define __DEPRECATED 1 @@ -20,7 +20,7 @@ // CXX0X:#define __private_extern__ extern // // -// RUN: clang-cc -x=c++ -std=c++98 -E -dM < /dev/null | FileCheck -check-prefix CXX98 %s +// RUN: clang-cc -x c++ -std=c++98 -E -dM < /dev/null | FileCheck -check-prefix CXX98 %s // // CXX98:#define _GNU_SOURCE 1 // CXX98:#define __DEPRECATED 1 @@ -36,7 +36,7 @@ // C99:#define __STRICT_ANSI__ 1 // // -// RUN: clang-cc -E -dM -fms-extensions=0 < /dev/null | FileCheck -check-prefix COMMON %s +// RUN: clang-cc -E -dM < /dev/null | FileCheck -check-prefix COMMON %s // // COMMON:#define __CONSTANT_CFSTRINGS__ 1 // COMMON:#define __FINITE_MATH_ONLY__ 0 @@ -56,7 +56,7 @@ // RUN: clang-cc -ffreestanding -E -dM < /dev/null | FileCheck -check-prefix FREESTANDING %s // FREESTANDING:#define __STDC_HOSTED__ 0 // -// RUN: clang-cc -x=c++ -std=gnu++98 -E -dM < /dev/null | FileCheck -check-prefix GXX98 %s +// RUN: clang-cc -x c++ -std=gnu++98 -E -dM < /dev/null | FileCheck -check-prefix GXX98 %s // // GXX98:#define _GNU_SOURCE 1 // GXX98:#define __DEPRECATED 1 @@ -80,19 +80,19 @@ // MSEXT:#define __int8 __INT8_TYPE__ // // -// RUN: clang-cc -x=objective-c -E -dM < /dev/null | FileCheck -check-prefix OBJC %s +// RUN: clang-cc -x objective-c -E -dM < /dev/null | FileCheck -check-prefix OBJC %s // // OBJC:#define OBJC_NEW_PROPERTIES 1 // OBJC:#define __NEXT_RUNTIME__ 1 // OBJC:#define __OBJC__ 1 // // -// RUN: clang-cc -x=objective-c -fobjc-gc -E -dM < /dev/null | FileCheck -check-prefix OBJCGC %s +// RUN: clang-cc -x objective-c -fobjc-gc -E -dM < /dev/null | FileCheck -check-prefix OBJCGC %s // // OBJCGC:#define __OBJC_GC__ 1 // // -// RUN: clang-cc -x=objective-c -fobjc-nonfragile-abi -E -dM < /dev/null | FileCheck -check-prefix NONFRAGILE %s +// RUN: clang-cc -x objective-c -fobjc-nonfragile-abi -E -dM < /dev/null | FileCheck -check-prefix NONFRAGILE %s // // NONFRAGILE:#define OBJC_ZEROCOST_EXCEPTIONS 1 // NONFRAGILE:#define __OBJC2__ 1 @@ -108,7 +108,7 @@ // PASCAL:#define __PASCAL_STRINGS__ 1 // // -// RUN: clang-cc -fsigned-char -E -dM -fms-extensions=0 < /dev/null | FileCheck -check-prefix SCHAR %s +// RUN: clang-cc -E -dM < /dev/null | FileCheck -check-prefix SCHAR %s // // SCHAR:#define __STDC__ 1 // SCHAR-NOT:#define __UNSIGNED_CHAR__ @@ -155,6 +155,7 @@ // ARM:#define __INT64_TYPE__ long long int // ARM:#define __INT8_TYPE__ char // ARM:#define __INTMAX_MAX__ 9223372036854775807LL +// ARM:#define __INTMAX_TYPE__ long long int // ARM:#define __INTMAX_WIDTH__ 64 // ARM:#define __INTPTR_TYPE__ long int // ARM:#define __INTPTR_WIDTH__ 32 @@ -178,15 +179,21 @@ // ARM:#define __NO_INLINE__ 1 // ARM:#define __POINTER_WIDTH__ 32 // ARM:#define __PTRDIFF_TYPE__ int +// ARM:#define __PTRDIFF_WIDTH__ 32 // ARM:#define __SCHAR_MAX__ 127 // ARM:#define __SHRT_MAX__ 32767 +// ARM:#define __SIG_ATOMIC_WIDTH__ 32 // ARM:#define __SIZE_TYPE__ unsigned int +// ARM:#define __SIZE_WIDTH__ 32 // ARM:#define __THUMB_INTERWORK__ 1 +// ARM:#define __UINTMAX_TYPE__ long long unsigned int // ARM:#define __USER_LABEL_PREFIX__ _ // ARM:#define __VFP_FP__ 1 // ARM:#define __WCHAR_MAX__ 2147483647 // ARM:#define __WCHAR_TYPE__ int +// ARM:#define __WCHAR_WIDTH__ 32 // ARM:#define __WINT_TYPE__ int +// ARM:#define __WINT_WIDTH__ 32 // ARM:#define __arm 1 // ARM:#define __arm__ 1 // @@ -233,6 +240,7 @@ // BFIN:#define __INT64_TYPE__ long long int // BFIN:#define __INT8_TYPE__ char // BFIN:#define __INTMAX_MAX__ 9223372036854775807LL +// BFIN:#define __INTMAX_TYPE__ long long int // BFIN:#define __INTMAX_WIDTH__ 64 // BFIN:#define __INTPTR_TYPE__ long int // BFIN:#define __INTPTR_WIDTH__ 32 @@ -255,13 +263,19 @@ // BFIN:#define __NO_INLINE__ 1 // BFIN:#define __POINTER_WIDTH__ 32 // BFIN:#define __PTRDIFF_TYPE__ long int +// BFIN:#define __PTRDIFF_WIDTH__ 32 // BFIN:#define __SCHAR_MAX__ 127 // BFIN:#define __SHRT_MAX__ 32767 +// BFIN:#define __SIG_ATOMIC_WIDTH__ 32 // BFIN:#define __SIZE_TYPE__ long unsigned int +// BFIN:#define __SIZE_WIDTH__ 32 +// BFIN:#define __UINTMAX_TYPE__ long long unsigned int // BFIN:#define __USER_LABEL_PREFIX__ _ // BFIN:#define __WCHAR_MAX__ 2147483647 // BFIN:#define __WCHAR_TYPE__ int +// BFIN:#define __WCHAR_WIDTH__ 32 // BFIN:#define __WINT_TYPE__ int +// BFIN:#define __WINT_WIDTH__ 32 // BFIN:#define __bfin 1 // BFIN:#define __bfin__ 1 // BFIN:#define bfin 1 @@ -304,6 +318,7 @@ // I386:#define __INT64_TYPE__ long long int // I386:#define __INT8_TYPE__ char // I386:#define __INTMAX_MAX__ 9223372036854775807LL +// I386:#define __INTMAX_TYPE__ long long int // I386:#define __INTMAX_WIDTH__ 64 // I386:#define __INTPTR_TYPE__ int // I386:#define __INTPTR_WIDTH__ 32 @@ -328,14 +343,20 @@ // I386:#define __NO_MATH_INLINES 1 // I386:#define __POINTER_WIDTH__ 32 // I386:#define __PTRDIFF_TYPE__ int +// I386:#define __PTRDIFF_WIDTH__ 32 // I386:#define __REGISTER_PREFIX__ // I386:#define __SCHAR_MAX__ 127 // I386:#define __SHRT_MAX__ 32767 +// I386:#define __SIG_ATOMIC_WIDTH__ 32 // I386:#define __SIZE_TYPE__ unsigned int +// I386:#define __SIZE_WIDTH__ 32 +// I386:#define __UINTMAX_TYPE__ long long unsigned int // I386:#define __USER_LABEL_PREFIX__ _ // I386:#define __WCHAR_MAX__ 2147483647 // I386:#define __WCHAR_TYPE__ int +// I386:#define __WCHAR_WIDTH__ 32 // I386:#define __WINT_TYPE__ int +// I386:#define __WINT_WIDTH__ 32 // I386:#define __i386 1 // I386:#define __i386__ 1 // I386:#define __nocona 1 @@ -381,6 +402,7 @@ // MSP430:#define __INT32_TYPE__ long int // MSP430:#define __INT8_TYPE__ char // MSP430:#define __INTMAX_MAX__ 2147483647L +// MSP430:#define __INTMAX_TYPE__ long int // MSP430:#define __INTMAX_WIDTH__ 32 // MSP430:#define __INTPTR_TYPE__ short // MSP430:#define __INTPTR_WIDTH__ 16 @@ -404,13 +426,19 @@ // MSP430:#define __NO_INLINE__ 1 // MSP430:#define __POINTER_WIDTH__ 16 // MSP430:#define __PTRDIFF_TYPE__ int +// MSP430:#define __PTRDIFF_WIDTH__ 16 // MSP430:#define __SCHAR_MAX__ 127 // MSP430:#define __SHRT_MAX__ 32767 +// MSP430:#define __SIG_ATOMIC_WIDTH__ 32 // MSP430:#define __SIZE_TYPE__ unsigned int +// MSP430:#define __SIZE_WIDTH__ 16 +// MSP430:#define __UINTMAX_TYPE__ long unsigned int // MSP430:#define __USER_LABEL_PREFIX__ _ // MSP430:#define __WCHAR_MAX__ 32767 // MSP430:#define __WCHAR_TYPE__ int +// MSP430:#define __WCHAR_WIDTH__ 16 // MSP430:#define __WINT_TYPE__ int +// MSP430:#define __WINT_WIDTH__ 16 // MSP430:#define __clang__ 1 // // RUN: clang-cc -E -dM -ffreestanding -triple=pic16-none-none < /dev/null | FileCheck -check-prefix PIC16 %s @@ -451,6 +479,7 @@ // PIC16:#define __INT32_TYPE__ long int // PIC16:#define __INT8_TYPE__ char // PIC16:#define __INTMAX_MAX__ 2147483647L +// PIC16:#define __INTMAX_TYPE__ long int // PIC16:#define __INTMAX_WIDTH__ 32 // PIC16:#define __INTPTR_TYPE__ short // PIC16:#define __INTPTR_WIDTH__ 16 @@ -473,13 +502,19 @@ // PIC16:#define __NO_INLINE__ 1 // PIC16:#define __POINTER_WIDTH__ 16 // PIC16:#define __PTRDIFF_TYPE__ int +// PIC16:#define __PTRDIFF_WIDTH__ 16 // PIC16:#define __SCHAR_MAX__ 127 // PIC16:#define __SHRT_MAX__ 32767 +// PIC16:#define __SIG_ATOMIC_WIDTH__ 32 // PIC16:#define __SIZE_TYPE__ unsigned int +// PIC16:#define __SIZE_WIDTH__ 16 +// PIC16:#define __UINTMAX_TYPE__ long unsigned int // PIC16:#define __USER_LABEL_PREFIX__ _ // PIC16:#define __WCHAR_MAX__ 32767 // PIC16:#define __WCHAR_TYPE__ int +// PIC16:#define __WCHAR_WIDTH__ 16 // PIC16:#define __WINT_TYPE__ int +// PIC16:#define __WINT_WIDTH__ 16 // PIC16:#define __clang__ 1 // PIC16:#define __llvm__ 1 // PIC16:#define __pic16 1 @@ -489,7 +524,7 @@ // PIC16:#define ram __attribute__((address_space(0))) // PIC16:#define rom __attribute__((address_space(1))) // -// RUN: clang-cc -E -dM -ffreestanding -triple=powerpc64-none-none -fsigned-char=0 < /dev/null | FileCheck -check-prefix PPC64 %s +// RUN: clang-cc -E -dM -ffreestanding -triple=powerpc64-none-none -fno-signed-char < /dev/null | FileCheck -check-prefix PPC64 %s // // PPC64:#define _ARCH_PPC 1 // PPC64:#define _ARCH_PPC64 1 @@ -533,6 +568,7 @@ // PPC64:#define __INT64_TYPE__ long int // PPC64:#define __INT8_TYPE__ char // PPC64:#define __INTMAX_MAX__ 9223372036854775807L +// PPC64:#define __INTMAX_TYPE__ long int // PPC64:#define __INTMAX_WIDTH__ 64 // PPC64:#define __INTPTR_TYPE__ long int // PPC64:#define __INTPTR_WIDTH__ 64 @@ -559,18 +595,24 @@ // PPC64:#define __POINTER_WIDTH__ 64 // PPC64:#define __POWERPC__ 1 // PPC64:#define __PTRDIFF_TYPE__ long int +// PPC64:#define __PTRDIFF_WIDTH__ 64 // PPC64:#define __REGISTER_PREFIX__ // PPC64:#define __SCHAR_MAX__ 127 // PPC64:#define __SHRT_MAX__ 32767 +// PPC64:#define __SIG_ATOMIC_WIDTH__ 32 // PPC64:#define __SIZE_TYPE__ long unsigned int +// PPC64:#define __SIZE_WIDTH__ 64 +// PPC64:#define __UINTMAX_TYPE__ long unsigned int // PPC64:#define __USER_LABEL_PREFIX__ _ // PPC64:#define __WCHAR_MAX__ 2147483647 // PPC64:#define __WCHAR_TYPE__ int +// PPC64:#define __WCHAR_WIDTH__ 32 // PPC64:#define __WINT_TYPE__ int +// PPC64:#define __WINT_WIDTH__ 32 // PPC64:#define __ppc64__ 1 // PPC64:#define __ppc__ 1 // -// RUN: clang-cc -E -dM -ffreestanding -triple=powerpc-none-none -fsigned-char=0 < /dev/null | FileCheck -check-prefix PPC %s +// RUN: clang-cc -E -dM -ffreestanding -triple=powerpc-none-none -fno-signed-char < /dev/null | FileCheck -check-prefix PPC %s // // PPC:#define _ARCH_PPC 1 // PPC:#define _BIG_ENDIAN 1 @@ -612,6 +654,7 @@ // PPC:#define __INT64_TYPE__ long long int // PPC:#define __INT8_TYPE__ char // PPC:#define __INTMAX_MAX__ 9223372036854775807LL +// PPC:#define __INTMAX_TYPE__ long long int // PPC:#define __INTMAX_WIDTH__ 64 // PPC:#define __INTPTR_TYPE__ long int // PPC:#define __INTPTR_WIDTH__ 32 @@ -637,17 +680,23 @@ // PPC:#define __POINTER_WIDTH__ 32 // PPC:#define __POWERPC__ 1 // PPC:#define __PTRDIFF_TYPE__ long int +// PPC:#define __PTRDIFF_WIDTH__ 32 // PPC:#define __REGISTER_PREFIX__ // PPC:#define __SCHAR_MAX__ 127 // PPC:#define __SHRT_MAX__ 32767 +// PPC:#define __SIG_ATOMIC_WIDTH__ 32 // PPC:#define __SIZE_TYPE__ long unsigned int +// PPC:#define __SIZE_WIDTH__ 32 +// PPC:#define __UINTMAX_TYPE__ long long unsigned int // PPC:#define __USER_LABEL_PREFIX__ _ // PPC:#define __WCHAR_MAX__ 2147483647 // PPC:#define __WCHAR_TYPE__ int +// PPC:#define __WCHAR_WIDTH__ 32 // PPC:#define __WINT_TYPE__ int +// PPC:#define __WINT_WIDTH__ 32 // PPC:#define __ppc__ 1 // -// RUN: clang-cc -E -dM -ffreestanding -triple=s390x-none-none -fsigned-char=0 < /dev/null | FileCheck -check-prefix S390X %s +// RUN: clang-cc -E -dM -ffreestanding -triple=s390x-none-none -fno-signed-char < /dev/null | FileCheck -check-prefix S390X %s // // S390X:#define __CHAR_BIT__ 8 // S390X:#define __CHAR_UNSIGNED__ 1 @@ -686,6 +735,7 @@ // S390X:#define __INT64_TYPE__ long int // S390X:#define __INT8_TYPE__ char // S390X:#define __INTMAX_MAX__ 9223372036854775807LL +// S390X:#define __INTMAX_TYPE__ long long int // S390X:#define __INTMAX_WIDTH__ 64 // S390X:#define __INTPTR_TYPE__ long int // S390X:#define __INTPTR_WIDTH__ 64 @@ -708,13 +758,19 @@ // S390X:#define __NO_INLINE__ 1 // S390X:#define __POINTER_WIDTH__ 64 // S390X:#define __PTRDIFF_TYPE__ long int +// S390X:#define __PTRDIFF_WIDTH__ 64 // S390X:#define __SCHAR_MAX__ 127 // S390X:#define __SHRT_MAX__ 32767 +// S390X:#define __SIG_ATOMIC_WIDTH__ 32 // S390X:#define __SIZE_TYPE__ long unsigned int +// S390X:#define __SIZE_WIDTH__ 64 +// S390X:#define __UINTMAX_TYPE__ long long unsigned int // S390X:#define __USER_LABEL_PREFIX__ _ // S390X:#define __WCHAR_MAX__ 2147483647 // S390X:#define __WCHAR_TYPE__ int +// S390X:#define __WCHAR_WIDTH__ 32 // S390X:#define __WINT_TYPE__ int +// S390X:#define __WINT_WIDTH__ 32 // S390X:#define __s390__ 1 // S390X:#define __s390x__ 1 // @@ -756,6 +812,7 @@ // SPARC:#define __INT64_TYPE__ long long int // SPARC:#define __INT8_TYPE__ char // SPARC:#define __INTMAX_MAX__ 9223372036854775807LL +// SPARC:#define __INTMAX_TYPE__ long long int // SPARC:#define __INTMAX_WIDTH__ 64 // SPARC:#define __INTPTR_TYPE__ long int // SPARC:#define __INTPTR_WIDTH__ 32 @@ -778,15 +835,21 @@ // SPARC:#define __NO_INLINE__ 1 // SPARC:#define __POINTER_WIDTH__ 32 // SPARC:#define __PTRDIFF_TYPE__ long int +// SPARC:#define __PTRDIFF_WIDTH__ 32 // SPARC:#define __REGISTER_PREFIX__ // SPARC:#define __SCHAR_MAX__ 127 // SPARC:#define __SHRT_MAX__ 32767 +// SPARC:#define __SIG_ATOMIC_WIDTH__ 32 // SPARC:#define __SIZE_TYPE__ long unsigned int +// SPARC:#define __SIZE_WIDTH__ 32 +// SPARC:#define __UINTMAX_TYPE__ long long unsigned int // SPARC:#define __USER_LABEL_PREFIX__ _ // SPARC:#define __VERSION__ "4.2.1 Compatible Clang Compiler" // SPARC:#define __WCHAR_MAX__ 2147483647 // SPARC:#define __WCHAR_TYPE__ int +// SPARC:#define __WCHAR_WIDTH__ 32 // SPARC:#define __WINT_TYPE__ int +// SPARC:#define __WINT_WIDTH__ 32 // SPARC:#define __sparc 1 // SPARC:#define __sparc__ 1 // SPARC:#define __sparcv8 1 @@ -828,6 +891,7 @@ // TCE:#define __INT32_TYPE__ int // TCE:#define __INT8_TYPE__ char // TCE:#define __INTMAX_MAX__ 2147483647L +// TCE:#define __INTMAX_TYPE__ long int // TCE:#define __INTMAX_WIDTH__ 32 // TCE:#define __INTPTR_TYPE__ int // TCE:#define __INTPTR_WIDTH__ 32 @@ -850,15 +914,21 @@ // TCE:#define __NO_INLINE__ 1 // TCE:#define __POINTER_WIDTH__ 32 // TCE:#define __PTRDIFF_TYPE__ int +// TCE:#define __PTRDIFF_WIDTH__ 32 // TCE:#define __SCHAR_MAX__ 127 // TCE:#define __SHRT_MAX__ 32767 +// TCE:#define __SIG_ATOMIC_WIDTH__ 32 // TCE:#define __SIZE_TYPE__ unsigned int +// TCE:#define __SIZE_WIDTH__ 32 // TCE:#define __TCE_V1__ 1 // TCE:#define __TCE__ 1 +// TCE:#define __UINTMAX_TYPE__ long unsigned int // TCE:#define __USER_LABEL_PREFIX__ _ // TCE:#define __WCHAR_MAX__ 2147483647 // TCE:#define __WCHAR_TYPE__ int +// TCE:#define __WCHAR_WIDTH__ 32 // TCE:#define __WINT_TYPE__ int +// TCE:#define __WINT_WIDTH__ 32 // TCE:#define __tce 1 // TCE:#define __tce__ 1 // TCE:#define tce 1 @@ -902,6 +972,7 @@ // X86_64:#define __INT64_TYPE__ long int // X86_64:#define __INT8_TYPE__ char // X86_64:#define __INTMAX_MAX__ 9223372036854775807L +// X86_64:#define __INTMAX_TYPE__ long int // X86_64:#define __INTMAX_WIDTH__ 64 // X86_64:#define __INTPTR_TYPE__ long int // X86_64:#define __INTPTR_WIDTH__ 64 @@ -928,18 +999,24 @@ // X86_64:#define __NO_MATH_INLINES 1 // X86_64:#define __POINTER_WIDTH__ 64 // X86_64:#define __PTRDIFF_TYPE__ long int +// X86_64:#define __PTRDIFF_WIDTH__ 64 // X86_64:#define __REGISTER_PREFIX__ // X86_64:#define __SCHAR_MAX__ 127 // X86_64:#define __SHRT_MAX__ 32767 +// X86_64:#define __SIG_ATOMIC_WIDTH__ 32 // X86_64:#define __SIZE_TYPE__ long unsigned int +// X86_64:#define __SIZE_WIDTH__ 64 // X86_64:#define __SSE2_MATH__ 1 // X86_64:#define __SSE2__ 1 // X86_64:#define __SSE_MATH__ 1 // X86_64:#define __SSE__ 1 +// X86_64:#define __UINTMAX_TYPE__ long unsigned int // X86_64:#define __USER_LABEL_PREFIX__ _ // X86_64:#define __WCHAR_MAX__ 2147483647 // X86_64:#define __WCHAR_TYPE__ int +// X86_64:#define __WCHAR_WIDTH__ 32 // X86_64:#define __WINT_TYPE__ int +// X86_64:#define __WINT_WIDTH__ 32 // X86_64:#define __amd64 1 // X86_64:#define __amd64__ 1 // X86_64:#define __nocona 1 diff --git a/test/Preprocessor/line-directive.c b/test/Preprocessor/line-directive.c index b79b1d9..33dd9bb 100644 --- a/test/Preprocessor/line-directive.c +++ b/test/Preprocessor/line-directive.c @@ -1,4 +1,4 @@ -// RUN: clang-cc -fsyntax-only -verify -pedantic -fms-extensions=0 %s +// RUN: clang-cc -fsyntax-only -verify -pedantic %s // RUN: clang-cc -E %s 2>&1 | grep 'blonk.c:92:2: error: #error ABC' // RUN: clang-cc -E %s 2>&1 | grep 'blonk.c:93:2: error: #error DEF' diff --git a/test/Preprocessor/macro_paste_bcpl_comment.c b/test/Preprocessor/macro_paste_bcpl_comment.c index 0637a87..8bbee5d 100644 --- a/test/Preprocessor/macro_paste_bcpl_comment.c +++ b/test/Preprocessor/macro_paste_bcpl_comment.c @@ -1,4 +1,4 @@ -// RUN: clang-cc %s -Eonly -fms-extensions=0 2>&1 | grep error +// RUN: clang-cc %s -Eonly 2>&1 | grep error #define COMM1 / ## / COMM1 diff --git a/test/Preprocessor/stdint.c b/test/Preprocessor/stdint.c index 9c98e29..9304746 100644 --- a/test/Preprocessor/stdint.c +++ b/test/Preprocessor/stdint.c @@ -403,8 +403,8 @@ // // MSP430:SIG_ATOMIC_MIN_ (-2147483647L -1) // MSP430:SIG_ATOMIC_MAX_ 2147483647L -// MSP430:WINT_MIN_ (-2147483647L -1) -// MSP430:WINT_MAX_ 2147483647L +// MSP430:WINT_MIN_ (-32767 -1) +// MSP430:WINT_MAX_ 32767 // // MSP430:WCHAR_MAX_ 32767 // MSP430:WCHAR_MIN_ (-32767 -1) @@ -503,8 +503,8 @@ // // PIC16:SIG_ATOMIC_MIN_ (-2147483647L -1) // PIC16:SIG_ATOMIC_MAX_ 2147483647L -// PIC16:WINT_MIN_ (-2147483647L -1) -// PIC16:WINT_MAX_ 2147483647L +// PIC16:WINT_MIN_ (-32767 -1) +// PIC16:WINT_MAX_ 32767 // // PIC16:WCHAR_MAX_ 32767 // PIC16:WCHAR_MIN_ (-32767 -1) @@ -1158,6 +1158,35 @@ // X86_64:INTMAX_C_(0) 0L // X86_64:UINTMAX_C_(0) 0UL // +// +// stdint.h forms several macro definitions by pasting together identifiers +// to form names (eg. int32_t is formed from int ## 32 ## _t). The following +// case tests that these joining operations are performed correctly even if +// the identifiers used in the operations (int, uint, _t, INT, UINT, _MIN, +// _MAX, and _C(v)) are themselves macros. +// +// RUN: clang-cc -E -ffreestanding -Dint=a -Duint=b -D_t=c -DINT=d -DUINT=e -D_MIN=f -D_MAX=g '-D_C(v)=h' -triple=i386-none-none %s | FileCheck -check-prefix JOIN %s +// JOIN:typedef int32_t intptr_t; +// JOIN:typedef uint32_t uintptr_t; +// JOIN:typedef int64_t intmax_t; +// JOIN:typedef uint64_t uintmax_t; +// JOIN:INTPTR_MIN_ (-2147483647 -1) +// JOIN:INTPTR_MAX_ 2147483647 +// JOIN:UINTPTR_MAX_ 4294967295U +// JOIN:PTRDIFF_MIN_ (-2147483647 -1) +// JOIN:PTRDIFF_MAX_ 2147483647 +// JOIN:SIZE_MAX_ 4294967295U +// JOIN:INTMAX_MIN_ (-9223372036854775807LL -1) +// JOIN:INTMAX_MAX_ 9223372036854775807LL +// JOIN:UINTMAX_MAX_ 18446744073709551615ULL +// JOIN:SIG_ATOMIC_MIN_ (-2147483647 -1) +// JOIN:SIG_ATOMIC_MAX_ 2147483647 +// JOIN:WINT_MIN_ (-2147483647 -1) +// JOIN:WINT_MAX_ 2147483647 +// JOIN:WCHAR_MAX_ 2147483647 +// JOIN:WCHAR_MIN_ (-2147483647 -1) +// JOIN:INTMAX_C_(0) 0LL +// JOIN:UINTMAX_C_(0) 0ULL #include <stdint.h> |