Index: lldb/trunk/test/Import/if-stmt/Inputs/F.cpp =================================================================== --- lldb/trunk/test/Import/if-stmt/Inputs/F.cpp +++ lldb/trunk/test/Import/if-stmt/Inputs/F.cpp @@ -0,0 +1,21 @@ +void f() { + if (true) + return; + + if (int j = 3) + return; + + if (int j; true) + return; + + if (true) + return; + else + return; + + if (true) { + return; + } else { + return; + } +} Index: lldb/trunk/test/Import/if-stmt/test.cpp =================================================================== --- lldb/trunk/test/Import/if-stmt/test.cpp +++ lldb/trunk/test/Import/if-stmt/test.cpp @@ -0,0 +1,47 @@ +// RUN: clang-import-test -dump-ast -import %S/Inputs/F.cpp -expression %s | FileCheck %s + +// CHECK: IfStmt +// CHECK-NEXT: <> +// CHECK-NEXT: <> +// CHECK-NEXT: CXXBoolLiteralExpr +// CHECK-NEXT: ReturnStmt +// CHECK-NEXT: <> + +// CHECK: IfStmt +// CHECK-NEXT: <> +// CHECK-NEXT: DeclStmt +// CHECK-NEXT: VarDecl +// CHECK-NEXT: IntegerLiteral +// CHECK-NEXT: ImplicitCastExpr +// CHECK-NEXT: ImplicitCastExpr +// CHECK-NEXT: DeclRefExpr +// CHECK-NEXT: ReturnStmt +// CHECK-NEXT: <> + +// CHECK: IfStmt +// CHECK-NEXT: DeclStmt +// CHECK-NEXT: VarDecl +// CHECK-NEXT: <> +// CHECK-NEXT: CXXBoolLiteralExpr +// CHECK-NEXT: ReturnStmt +// CHECK-NEXT: <> + +// CHECK: IfStmt +// CHECK-NEXT: <> +// CHECK-NEXT: <> +// CHECK-NEXT: CXXBoolLiteralExpr +// CHECK-NEXT: ReturnStmt +// CHECK-NEXT: ReturnStmt + +// CHECK: IfStmt +// CHECK-NEXT: <> +// CHECK-NEXT: <> +// CHECK-NEXT: CXXBoolLiteralExpr +// CHECK-NEXT: CompoundStmt +// CHECK-NEXT: ReturnStmt +// CHECK-NEXT: CompoundStmt +// CHECK-NEXT: ReturnStmt + +void expr() { + f(); +}