1 // RUN: clang-import-test -dump-ast -import %S/Inputs/F.cpp -expression %s | FileCheck %s
2
3 // CHECK: SwitchStmt
4 // CHECK-NEXT: IntegerLiteral
5 // CHECK-NEXT: CompoundStmt
6 // CHECK-NEXT: CaseStmt
7 // CHECK-NEXT: ConstantExpr
8 // CHECK-NEXT: value: Int 1
9 // CHECK-NEXT: IntegerLiteral
10 // CHECK-NEXT: CaseStmt
11 // CHECK-NEXT: ConstantExpr
12 // CHECK-NEXT: value: Int 2
13 // CHECK-NEXT: IntegerLiteral
14 // CHECK-NEXT: BreakStmt
15 // CHECK-NEXT: CaseStmt
16 // CHECK-NEXT: ConstantExpr
17 // CHECK-NEXT: value: Int 3
18 // CHECK-NEXT: IntegerLiteral
19 // CHECK-NEXT: ConstantExpr
20 // CHECK-NEXT: value: Int 4
21 // CHECK-NEXT: IntegerLiteral
22 // CHECK-NEXT: CaseStmt
23 // CHECK-NEXT: ConstantExpr
24 // CHECK-NEXT: value: Int 5
25 // CHECK-NEXT: IntegerLiteral
26 // CHECK-NEXT: ConstantExpr
27 // CHECK-NEXT: value: Int 5
28 // CHECK-NEXT: IntegerLiteral
29 // CHECK-NEXT: BreakStmt
30
31 // CHECK: SwitchStmt
32 // CHECK-NEXT: DeclStmt
33 // CHECK-NEXT: VarDecl
34 // CHECK-SAME: varname
35 // CHECK-NEXT: IntegerLiteral
36 // CHECK-NEXT: CompoundStmt
37 // CHECK-NEXT: CaseStmt
38 // CHECK-NEXT: ConstantExpr
39 // CHECK-NEXT: value: Int 1
40 // CHECK-NEXT: IntegerLiteral
41 // CHECK-NEXT: BreakStmt
42 // CHECK-NEXT: CaseStmt
43 // CHECK-NEXT: ConstantExpr
44 // CHECK-NEXT: value: Int 2
45 // CHECK-NEXT: IntegerLiteral
46 // CHECK-NEXT: BreakStmt
47 // CHECK-NEXT: CaseStmt
48 // CHECK-NEXT: ConstantExpr
49 // CHECK-NEXT: value: Int 3
50 // CHECK-NEXT: IntegerLiteral
51 // CHECK-NEXT: ConstantExpr
52 // CHECK-NEXT: value: Int 5
53 // CHECK-NEXT: IntegerLiteral
54 // CHECK-NEXT: BreakStmt
55
56 // CHECK: SwitchStmt
57 // CHECK-NEXT: IntegerLiteral
58 // CHECK-NEXT: DefaultStmt
59 // CHECK-NEXT: BreakStmt
60
61 // CHECK: SwitchStmt
62 // CHECK-NEXT: IntegerLiteral
63 // CHECK-NEXT: NullStmt
64
expr()65 void expr() {
66 f();
67 }
68