[clang] Handle __declspec() attributes in using
[llvm-project.git] / clang / test / PCH / pragma-comment.c
blob07c3d40d3b1aa6bf78872f14e2b39003efb94809
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 comment(lib, "foo.lib")
21 #else
23 // CHECK: "/DEFAULTLIB:foo.lib"
25 #endif