[clang] Handle __declspec() attributes in using
[llvm-project.git] / clang / test / PCH / pragma-detect_mismatch.c
blobced4cf9d159b927cb5a77ec0e3e5c3516253641a
1 // Test this without pch.
2 // RUN: %clang_cc1 %s -Wunknown-pragmas -Werror -triple thumbv7-windows -fms-extensions -emit-llvm -include %s -o - | FileCheck %s
3 // RUN: %clang_cc1 %s -Wunknown-pragmas -Werror -triple x86_64-pc-win32 -fms-extensions -emit-llvm -include %s -o - | FileCheck %s
5 // Test with pch.
6 // RUN: %clang_cc1 %s -Wunknown-pragmas -Werror -triple thumbv7-windows -fms-extensions -emit-pch -o %t
7 // RUN: %clang_cc1 %s -Wunknown-pragmas -Werror -triple thumbv7-windows -fms-extensions -emit-llvm -include-pch %t -o - | FileCheck %s
8 // RUN: %clang_cc1 %s -Wunknown-pragmas -Werror -triple x86_64-pc-win32 -fms-extensions -emit-pch -o %t
9 // RUN: %clang_cc1 %s -Wunknown-pragmas -Werror -triple x86_64-pc-win32 -fms-extensions -emit-llvm -include-pch %t -o - | FileCheck %s
11 // The first run line creates a pch, and since at that point HEADER is not
12 // defined, the only thing contained in the pch is the pragma. The second line
13 // then includes that pch, so HEADER is defined and the actual code is compiled.
14 // The check then makes sure that the pragma is in effect in the file that
15 // includes the pch.
17 #ifndef HEADER
18 #define HEADER
19 #pragma detect_mismatch("FruitKind", "Jaboticaba")
21 #else
23 // CHECK: "/FAILIFMISMATCH:\22FruitKind=Jaboticaba\22"
25 #endif