[clang] Handle __declspec() attributes in using
[llvm-project.git] / clang / test / Analysis / cfg-indirect-goto-determinism.cpp
blob895535e0c712241567951fb7b8881346e0573458
1 // RUN: %clang_analyze_cc1 -analyzer-checker=debug.DumpCFG %s 2>&1 | FileCheck %s
3 void *target;
4 int indirectBlockSuccessorDeterminism() {
5 (void)&&L1;
6 (void)&&L2;
7 (void)&&L3;
8 (void)&&L4;
9 (void)&&L5;
10 (void)&&L6;
11 (void)&&L7;
12 (void)&&L8;
13 (void)&&L9;
14 (void)&&L10;
15 (void)&&L11;
16 (void)&&L12;
17 (void)&&L13;
18 (void)&&L14;
19 (void)&&L15;
20 (void)&&L16;
21 (void)&&L17;
22 (void)&&L18;
23 (void)&&L19;
24 (void)&&L20;
25 (void)&&L21;
26 (void)&&L22;
27 (void)&&L23;
28 (void)&&L24;
29 (void)&&L25;
30 (void)&&L26;
31 (void)&&L27;
32 (void)&&L28;
33 (void)&&L29;
34 (void)&&L30;
35 (void)&&L31;
36 (void)&&L32;
37 (void)&&L33;
38 (void)&&L34;
39 (void)&&L35;
40 (void)&&L36;
41 (void)&&L37;
42 (void)&&L38;
43 (void)&&L39;
44 (void)&&L40;
46 goto *target;
47 L1:
48 L2:
49 L3:
50 L4:
51 L5:
52 L6:
53 L7:
54 L8:
55 L9:
56 L10:
57 L11:
58 L12:
59 L13:
60 L14:
61 L15:
62 L16:
63 L17:
64 L18:
65 L19:
66 L20:
67 L21:
68 L22:
69 L23:
70 L24:
71 L25:
72 L26:
73 L27:
74 L28:
75 L29:
76 L30:
77 L31:
78 L32:
79 L33:
80 L34:
81 L35:
82 L36:
83 L37:
84 L38:
85 L39:
86 L40:
87 return 0;
90 // CHECK-LABEL: [B41 (INDIRECT GOTO DISPATCH)]
91 // CHECK-NEXT: Preds (1): B42
92 // CHECK-NEXT: Succs (40): B1 B2 B3 B4 B5 B6 B7 B8
93 // CHECK-NEXT: B9 B10 B11 B12 B13 B14 B15 B16 B17 B18
94 // CHECK-NEXT: B19 B20 B21 B22 B23 B24 B25 B26 B27 B28
95 // CHECK-NEXT: B29 B30 B31 B32 B33 B34 B35 B36 B37 B38
96 // CHECK-NEXT: B39 B40