1 // RUN: llvm-tblgen %s | FileCheck %s
3 class Set<int i = 0, int j = 0, int k = 0> {
9 foreach i = [1, 2, 3] in {
11 foreach j = [1, 2, 3] in {
12 def I1_#i#_J1_#j : Set<i, j>;
15 foreach j = [4, 5, 6] in {
16 foreach k = [1, 2, 3] in {
17 def I3_#i#_J2_#j#_K1_#k : Set<i, j, k>;
19 def I4_#i#_J3_#j : Set<i, j>;
28 // CHECK: def I1_1_J1_1
33 // CHECK: def I1_1_J1_2
38 // CHECK: def I1_1_J1_3
48 // CHECK: def I1_2_J1_1
53 // CHECK: def I1_2_J1_2
58 // CHECK: def I1_2_J1_3
68 // CHECK: def I1_3_J1_1
73 // CHECK: def I1_3_J1_2
78 // CHECK: def I1_3_J1_3
98 // CHECK: def I3_1_J2_4_K1_1
103 // CHECK: def I3_1_J2_4_K1_2
108 // CHECK: def I3_1_J2_4_K1_3
113 // CHECK: def I3_1_J2_5_K1_1
118 // CHECK: def I3_1_J2_5_K1_2
123 // CHECK: def I3_1_J2_5_K1_3
128 // CHECK: def I3_1_J2_6_K1_1
133 // CHECK: def I3_1_J2_6_K1_2
138 // CHECK: def I3_1_J2_6_K1_3
143 // CHECK: def I3_2_J2_4_K1_1
148 // CHECK: def I3_2_J2_4_K1_2
153 // CHECK: def I3_2_J2_4_K1_3
158 // CHECK: def I3_2_J2_5_K1_1
163 // CHECK: def I3_2_J2_5_K1_2
168 // CHECK: def I3_2_J2_5_K1_3
173 // CHECK: def I3_2_J2_6_K1_1
178 // CHECK: def I3_2_J2_6_K1_2
183 // CHECK: def I3_2_J2_6_K1_3
188 // CHECK: def I3_3_J2_4_K1_1
193 // CHECK: def I3_3_J2_4_K1_2
198 // CHECK: def I3_3_J2_4_K1_3
203 // CHECK: def I3_3_J2_5_K1_1
208 // CHECK: def I3_3_J2_5_K1_2
213 // CHECK: def I3_3_J2_5_K1_3
218 // CHECK: def I3_3_J2_6_K1_1
223 // CHECK: def I3_3_J2_6_K1_2
228 // CHECK: def I3_3_J2_6_K1_3
233 // CHECK: def I4_1_J3_4
238 // CHECK: def I4_1_J3_5
243 // CHECK: def I4_1_J3_6
248 // CHECK: def I4_2_J3_4
253 // CHECK: def I4_2_J3_5
258 // CHECK: def I4_2_J3_6
263 // CHECK: def I4_3_J3_4
268 // CHECK: def I4_3_J3_5
273 // CHECK: def I4_3_J3_6