[clang] Handle __declspec() attributes in using
[llvm-project.git] / clang / test / Import / cxx-for-range / test.cpp
blob019fc20bee1e16c62a7de6f99277fd92ba8ceb3c
1 // RUN: clang-import-test -dump-ast -import %S/Inputs/F.cpp -expression %s | FileCheck %s
3 // CHECK: CXXForRangeStmt
5 // CHECK-NEXT: DeclStmt
6 // CHECK-NEXT: VarDecl
7 // CHECK-SAME: c 'Container'
8 // CHECK-NEXT: CXXConstructExpr
10 // CHECK-NEXT: DeclStmt
11 // CHECK-NEXT: VarDecl
12 // CHECK-NEXT: DeclRefExpr
13 // CHECK-SAME: 'c'
14 // CHECK-SAME: Container
16 // CHECK-NEXT: DeclStmt
17 // CHECK-NEXT: VarDecl
18 // CHECK-NEXT: CXXMemberCallExpr
19 // CHECK-SAME: 'int *'
20 // CHECK-NEXT: MemberExpr
21 // CHECK-SAME: .begin
22 // CHECK-NEXT: DeclRefExpr
23 // CHECK-SAME: '__range1'
24 // CHECK-SAME: Container
26 // CHECK-NEXT: DeclStmt
27 // CHECK-NEXT: VarDecl
28 // CHECK-NEXT: CXXMemberCallExpr
29 // CHECK-SAME: 'int *'
30 // CHECK-NEXT: MemberExpr
31 // CHECK-SAME: .end
32 // CHECK-NEXT: DeclRefExpr
33 // CHECK-SAME: '__range1'
34 // CHECK-SAME: Container
36 // CHECK-NEXT: BinaryOperator
37 // CHECK-SAME: '!='
38 // CHECK-NEXT: ImplicitCastExpr
39 // CHECK-NEXT: DeclRefExpr
40 // CHECK-SAME: '__begin1'
41 // CHECK-NEXT: ImplicitCastExpr
42 // CHECK-NEXT: DeclRefExpr
43 // CHECK-SAME: '__end1'
45 // CHECK-NEXT: UnaryOperator
46 // CHECK-SAME: '++'
47 // CHECK-NEXT: DeclRefExpr
48 // CHECK-SAME: '__begin1'
50 // CHECK-NEXT: DeclStmt
51 // CHECK-NEXT: VarDecl
52 // CHECK-SAME: varname
54 // CHECK: ReturnStmt
56 void expr() {
57 f();