summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaphael Isemann <teemperor@gmail.com>2018-08-15 22:36:58 +0000
committerRaphael Isemann <teemperor@gmail.com>2018-08-15 22:36:58 +0000
commitf78af0c9a41b77823ff0d318c0f6d43d5c94ffac (patch)
tree77532e85788126c8a1901e4f1abd538538699f9d
parent0e24bfc6bda169b39e478c3c8bb3a45f4d545c9a (diff)
downloadbcm5719-llvm-f78af0c9a41b77823ff0d318c0f6d43d5c94ffac.tar.gz
bcm5719-llvm-f78af0c9a41b77823ff0d318c0f6d43d5c94ffac.zip
[ASTImporter] Add test for IfStmt
Reviewers: a.sidorin, hiraditya Reviewed By: hiraditya Subscribers: hiraditya, martong, cfe-commits Differential Revision: https://reviews.llvm.org/D50796 llvm-svn: 339827
-rw-r--r--clang/test/Import/if-stmt/Inputs/F.cpp21
-rw-r--r--clang/test/Import/if-stmt/test.cpp47
2 files changed, 68 insertions, 0 deletions
diff --git a/clang/test/Import/if-stmt/Inputs/F.cpp b/clang/test/Import/if-stmt/Inputs/F.cpp
new file mode 100644
index 00000000000..a7062c94ea7
--- /dev/null
+++ b/clang/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;
+ }
+}
diff --git a/clang/test/Import/if-stmt/test.cpp b/clang/test/Import/if-stmt/test.cpp
new file mode 100644
index 00000000000..ef2270f724b
--- /dev/null
+++ b/clang/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: <<NULL>>
+// CHECK-NEXT: <<NULL>>
+// CHECK-NEXT: CXXBoolLiteralExpr
+// CHECK-NEXT: ReturnStmt
+// CHECK-NEXT: <<NULL>>
+
+// CHECK: IfStmt
+// CHECK-NEXT: <<NULL>>
+// CHECK-NEXT: DeclStmt
+// CHECK-NEXT: VarDecl
+// CHECK-NEXT: IntegerLiteral
+// CHECK-NEXT: ImplicitCastExpr
+// CHECK-NEXT: ImplicitCastExpr
+// CHECK-NEXT: DeclRefExpr
+// CHECK-NEXT: ReturnStmt
+// CHECK-NEXT: <<NULL>>
+
+// CHECK: IfStmt
+// CHECK-NEXT: DeclStmt
+// CHECK-NEXT: VarDecl
+// CHECK-NEXT: <<NULL>>
+// CHECK-NEXT: CXXBoolLiteralExpr
+// CHECK-NEXT: ReturnStmt
+// CHECK-NEXT: <<NULL>>
+
+// CHECK: IfStmt
+// CHECK-NEXT: <<NULL>>
+// CHECK-NEXT: <<NULL>>
+// CHECK-NEXT: CXXBoolLiteralExpr
+// CHECK-NEXT: ReturnStmt
+// CHECK-NEXT: ReturnStmt
+
+// CHECK: IfStmt
+// CHECK-NEXT: <<NULL>>
+// CHECK-NEXT: <<NULL>>
+// CHECK-NEXT: CXXBoolLiteralExpr
+// CHECK-NEXT: CompoundStmt
+// CHECK-NEXT: ReturnStmt
+// CHECK-NEXT: CompoundStmt
+// CHECK-NEXT: ReturnStmt
+
+void expr() {
+ f();
+}
OpenPOWER on IntegriCloud