[clang] Handle __declspec() attributes in using
[llvm-project.git] / clang / test / Preprocessor / dump_macros.c
blobd420eb4066de80133933ad4dc065144bc4723b66
1 // RUN: %clang_cc1 -E -dM %s -o - | FileCheck %s -strict-whitespace
3 // Space at end even without expansion tokens
4 // CHECK: #define A(x)
5 #define A(x)
7 // Space before expansion list.
8 // CHECK: #define B(x,y) x y
9 #define B(x,y)x y
11 // No space in argument list.
12 // CHECK: #define C(x,y) x y
13 #define C(x, y) x y
15 // No paste avoidance.
16 // CHECK: #define D() ..
17 #define D() ..
19 // Simple test.
20 // CHECK: #define E .
21 // CHECK: #define F X()Y
22 #define E .
23 #define F X()Y
25 // gcc prints macros at end of translation unit, so last one wins.
26 // CHECK: #define G 2
27 #define G 1
28 #undef G
29 #define G 2
31 // Variadic macros of various sorts. PR5699
33 // CHECK: H(x,...) __VA_ARGS__
34 #define H(x, ...) __VA_ARGS__
35 // CHECK: I(...) __VA_ARGS__
36 #define I(...) __VA_ARGS__
37 // CHECK: J(x...) __VA_ARGS__
38 #define J(x ...) __VA_ARGS__