diff options
Diffstat (limited to 'test/Import/cxx-for-range/test.cpp')
-rw-r--r-- | test/Import/cxx-for-range/test.cpp | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/test/Import/cxx-for-range/test.cpp b/test/Import/cxx-for-range/test.cpp new file mode 100644 index 0000000000000..019fc20bee1e1 --- /dev/null +++ b/test/Import/cxx-for-range/test.cpp @@ -0,0 +1,58 @@ +// RUN: clang-import-test -dump-ast -import %S/Inputs/F.cpp -expression %s | FileCheck %s + +// CHECK: CXXForRangeStmt + +// CHECK-NEXT: DeclStmt +// CHECK-NEXT: VarDecl +// CHECK-SAME: c 'Container' +// CHECK-NEXT: CXXConstructExpr + +// CHECK-NEXT: DeclStmt +// CHECK-NEXT: VarDecl +// CHECK-NEXT: DeclRefExpr +// CHECK-SAME: 'c' +// CHECK-SAME: Container + +// CHECK-NEXT: DeclStmt +// CHECK-NEXT: VarDecl +// CHECK-NEXT: CXXMemberCallExpr +// CHECK-SAME: 'int *' +// CHECK-NEXT: MemberExpr +// CHECK-SAME: .begin +// CHECK-NEXT: DeclRefExpr +// CHECK-SAME: '__range1' +// CHECK-SAME: Container + +// CHECK-NEXT: DeclStmt +// CHECK-NEXT: VarDecl +// CHECK-NEXT: CXXMemberCallExpr +// CHECK-SAME: 'int *' +// CHECK-NEXT: MemberExpr +// CHECK-SAME: .end +// CHECK-NEXT: DeclRefExpr +// CHECK-SAME: '__range1' +// CHECK-SAME: Container + +// CHECK-NEXT: BinaryOperator +// CHECK-SAME: '!=' +// CHECK-NEXT: ImplicitCastExpr +// CHECK-NEXT: DeclRefExpr +// CHECK-SAME: '__begin1' +// CHECK-NEXT: ImplicitCastExpr +// CHECK-NEXT: DeclRefExpr +// CHECK-SAME: '__end1' + +// CHECK-NEXT: UnaryOperator +// CHECK-SAME: '++' +// CHECK-NEXT: DeclRefExpr +// CHECK-SAME: '__begin1' + +// CHECK-NEXT: DeclStmt +// CHECK-NEXT: VarDecl +// CHECK-SAME: varname + +// CHECK: ReturnStmt + +void expr() { + f(); +} |