mirror of https://github.com/microsoft/clang.git
[ASTImporter] Add test for CXXForRangeStmt
Reviewers: a.sidorin, martong Reviewed By: martong Subscribers: rnkovacs, martong, cfe-commits Differential Revision: https://reviews.llvm.org/D51001 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@340297 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
df3559c872
commit
4b752d0315
|
@ -0,0 +1,11 @@
|
|||
struct Container {
|
||||
int *begin();
|
||||
int *end();
|
||||
};
|
||||
|
||||
void f() {
|
||||
Container c;
|
||||
for (int varname : c) {
|
||||
return;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,53 @@
|
|||
// RUN: clang-import-test -dump-ast -import %S/Inputs/F.cpp -expression %s | FileCheck %s
|
||||
|
||||
// CHECK: CXXForRangeStmt
|
||||
|
||||
// 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();
|
||||
}
|
Loading…
Reference in New Issue