[ARM] More MVE compare vector splat combines for ANDs
[llvm-complete.git] / test / DebugInfo / PDB / Native / pdb-native-udts.test
blobf9f2358370a5fcf2e4f4baa35a23d9d5a4ab9216
1 ; RUN: llvm-pdbutil pretty -native -classes %p/../Inputs/every-class.pdb \
2 ; RUN:     | FileCheck -check-prefix=PRETTY %s
4 ; RUN: llvm-pdbutil diadump -native -udts %p/../Inputs/every-class.pdb \
5 ; RUN:     | FileCheck -check-prefix=DUMP %s
8 PRETTY: struct main::__l2::<unnamed-type-Anonymous> [sizeof = 1]
9 PRETTY: struct main::__l2::Scoped [sizeof = 1]
10 PRETTY: struct __vc_attributes::event_sourceAttribute [sizeof = 12]
11 PRETTY: struct __vc_attributes::helper_attributes::v1_alttypeAttribute [sizeof = 4]
12 PRETTY: struct __vc_attributes::helper_attributes::usageAttribute [sizeof = 4]
13 PRETTY: struct __vc_attributes::threadingAttribute [sizeof = 4]
14 PRETTY: struct __vc_attributes::aggregatableAttribute [sizeof = 4]
15 PRETTY: struct __vc_attributes::event_receiverAttribute [sizeof = 8]
16 PRETTY: struct __vc_attributes::moduleAttribute [sizeof = 96]
17 PRETTY: struct Nested [sizeof = 1]
18 PRETTY: struct Nested::F [sizeof = 1]
19 PRETTY: struct Constructor [sizeof = 1]
20 PRETTY: class Class [sizeof = 1]
21 PRETTY: union Union [sizeof = 1]
22 PRETTY: struct Operator [sizeof = 1]
23 PRETTY: struct Cast [sizeof = 1]
24 PRETTY: struct Nothing [sizeof = 1]
25 PRETTY: struct Assignment [sizeof = 1]
26 PRETTY: const struct Nothing
27 PRETTY: volatile struct Nothing
28 PRETTY: const volatile struct Nothing
29 PRETTY: unaligned struct Nothing
31 ; DUMP:      {
32 ; DUMP-NEXT:   symIndexId: 2
33 ; DUMP-NEXT:   symTag: UDT
34 ; DUMP-NEXT:   name: main::__l2::<unnamed-type-Anonymous>
35 ; DUMP-NEXT:   virtualTableShapeId: 3
36 ; DUMP-NEXT:   length: 1
37 ; DUMP-NEXT:   udtKind: struct
38 ; DUMP-NEXT:   constructor: 0
39 ; DUMP-NEXT:   constType: 0
40 ; DUMP-NEXT:   hasAssignmentOperator: 0
41 ; DUMP-NEXT:   hasCastOperator: 0
42 ; DUMP-NEXT:   hasNestedTypes: 0
43 ; DUMP-NEXT:   overloadedOperator: 0
44 ; DUMP-NEXT:   isInterfaceUdt: 0
45 ; DUMP-NEXT:   intrinsic: 0
46 ; DUMP-NEXT:   nested: 0
47 ; DUMP-NEXT:   packed: 0
48 ; DUMP-NEXT:   isRefUdt: 0
49 ; DUMP-NEXT:   scoped: 1
50 ; DUMP-NEXT:   unalignedType: 0
51 ; DUMP-NEXT:   isValueUdt: 0
52 ; DUMP-NEXT:   volatileType: 0
53 ; DUMP-NEXT: }
54 ; DUMP-NEXT: {
55 ; DUMP-NEXT:   symIndexId: 4
56 ; DUMP-NEXT:   symTag: UDT
57 ; DUMP-NEXT:   name: main::__l2::Scoped
58 ; DUMP-NEXT:   virtualTableShapeId: 3
59 ; DUMP-NEXT:   length: 1
60 ; DUMP-NEXT:   udtKind: struct
61 ; DUMP-NEXT:   constructor: 0
62 ; DUMP-NEXT:   constType: 0
63 ; DUMP-NEXT:   hasAssignmentOperator: 0
64 ; DUMP-NEXT:   hasCastOperator: 0
65 ; DUMP-NEXT:   hasNestedTypes: 0
66 ; DUMP-NEXT:   overloadedOperator: 0
67 ; DUMP-NEXT:   isInterfaceUdt: 0
68 ; DUMP-NEXT:   intrinsic: 0
69 ; DUMP-NEXT:   nested: 0
70 ; DUMP-NEXT:   packed: 0
71 ; DUMP-NEXT:   isRefUdt: 0
72 ; DUMP-NEXT:   scoped: 1
73 ; DUMP-NEXT:   unalignedType: 0
74 ; DUMP-NEXT:   isValueUdt: 0
75 ; DUMP-NEXT:   volatileType: 0
76 ; DUMP-NEXT: }
77 ; DUMP-NEXT: {
78 ; DUMP-NEXT:   symIndexId: 5
79 ; DUMP-NEXT:   symTag: UDT
80 ; DUMP-NEXT:   name: __vc_attributes::event_sourceAttribute
81 ; DUMP-NEXT:   virtualTableShapeId: 3
82 ; DUMP-NEXT:   length: 12
83 ; DUMP-NEXT:   udtKind: struct
84 ; DUMP-NEXT:   constructor: 1
85 ; DUMP-NEXT:   constType: 0
86 ; DUMP-NEXT:   hasAssignmentOperator: 0
87 ; DUMP-NEXT:   hasCastOperator: 0
88 ; DUMP-NEXT:   hasNestedTypes: 1
89 ; DUMP-NEXT:   overloadedOperator: 0
90 ; DUMP-NEXT:   isInterfaceUdt: 0
91 ; DUMP-NEXT:   intrinsic: 0
92 ; DUMP-NEXT:   nested: 0
93 ; DUMP-NEXT:   packed: 0
94 ; DUMP-NEXT:   isRefUdt: 0
95 ; DUMP-NEXT:   scoped: 0
96 ; DUMP-NEXT:   unalignedType: 0
97 ; DUMP-NEXT:   isValueUdt: 0
98 ; DUMP-NEXT:   volatileType: 0
99 ; DUMP-NEXT: }
100 ; DUMP-NEXT: {
101 ; DUMP-NEXT:   symIndexId: 6
102 ; DUMP-NEXT:   symTag: UDT
103 ; DUMP-NEXT:   name: __vc_attributes::helper_attributes::v1_alttypeAttribute
104 ; DUMP-NEXT:   virtualTableShapeId: 3
105 ; DUMP-NEXT:   length: 4
106 ; DUMP-NEXT:   udtKind: struct
107 ; DUMP-NEXT:   constructor: 1
108 ; DUMP-NEXT:   constType: 0
109 ; DUMP-NEXT:   hasAssignmentOperator: 0
110 ; DUMP-NEXT:   hasCastOperator: 0
111 ; DUMP-NEXT:   hasNestedTypes: 1
112 ; DUMP-NEXT:   overloadedOperator: 0
113 ; DUMP-NEXT:   isInterfaceUdt: 0
114 ; DUMP-NEXT:   intrinsic: 0
115 ; DUMP-NEXT:   nested: 0
116 ; DUMP-NEXT:   packed: 0
117 ; DUMP-NEXT:   isRefUdt: 0
118 ; DUMP-NEXT:   scoped: 0
119 ; DUMP-NEXT:   unalignedType: 0
120 ; DUMP-NEXT:   isValueUdt: 0
121 ; DUMP-NEXT:   volatileType: 0
122 ; DUMP-NEXT: }
123 ; DUMP-NEXT: {
124 ; DUMP-NEXT:   symIndexId: 7
125 ; DUMP-NEXT:   symTag: UDT
126 ; DUMP-NEXT:   name: __vc_attributes::helper_attributes::usageAttribute
127 ; DUMP-NEXT:   virtualTableShapeId: 3
128 ; DUMP-NEXT:   length: 4
129 ; DUMP-NEXT:   udtKind: struct
130 ; DUMP-NEXT:   constructor: 1
131 ; DUMP-NEXT:   constType: 0
132 ; DUMP-NEXT:   hasAssignmentOperator: 0
133 ; DUMP-NEXT:   hasCastOperator: 0
134 ; DUMP-NEXT:   hasNestedTypes: 1
135 ; DUMP-NEXT:   overloadedOperator: 0
136 ; DUMP-NEXT:   isInterfaceUdt: 0
137 ; DUMP-NEXT:   intrinsic: 0
138 ; DUMP-NEXT:   nested: 0
139 ; DUMP-NEXT:   packed: 0
140 ; DUMP-NEXT:   isRefUdt: 0
141 ; DUMP-NEXT:   scoped: 0
142 ; DUMP-NEXT:   unalignedType: 0
143 ; DUMP-NEXT:   isValueUdt: 0
144 ; DUMP-NEXT:   volatileType: 0
145 ; DUMP-NEXT: }
146 ; DUMP-NEXT: {
147 ; DUMP-NEXT:   symIndexId: 8
148 ; DUMP-NEXT:   symTag: UDT
149 ; DUMP-NEXT:   name: __vc_attributes::threadingAttribute
150 ; DUMP-NEXT:   virtualTableShapeId: 3
151 ; DUMP-NEXT:   length: 4
152 ; DUMP-NEXT:   udtKind: struct
153 ; DUMP-NEXT:   constructor: 1
154 ; DUMP-NEXT:   constType: 0
155 ; DUMP-NEXT:   hasAssignmentOperator: 0
156 ; DUMP-NEXT:   hasCastOperator: 0
157 ; DUMP-NEXT:   hasNestedTypes: 1
158 ; DUMP-NEXT:   overloadedOperator: 0
159 ; DUMP-NEXT:   isInterfaceUdt: 0
160 ; DUMP-NEXT:   intrinsic: 0
161 ; DUMP-NEXT:   nested: 0
162 ; DUMP-NEXT:   packed: 0
163 ; DUMP-NEXT:   isRefUdt: 0
164 ; DUMP-NEXT:   scoped: 0
165 ; DUMP-NEXT:   unalignedType: 0
166 ; DUMP-NEXT:   isValueUdt: 0
167 ; DUMP-NEXT:   volatileType: 0
168 ; DUMP-NEXT: }
169 ; DUMP-NEXT: {
170 ; DUMP-NEXT:   symIndexId: 9
171 ; DUMP-NEXT:   symTag: UDT
172 ; DUMP-NEXT:   name: __vc_attributes::aggregatableAttribute
173 ; DUMP-NEXT:   virtualTableShapeId: 3
174 ; DUMP-NEXT:   length: 4
175 ; DUMP-NEXT:   udtKind: struct
176 ; DUMP-NEXT:   constructor: 1
177 ; DUMP-NEXT:   constType: 0
178 ; DUMP-NEXT:   hasAssignmentOperator: 0
179 ; DUMP-NEXT:   hasCastOperator: 0
180 ; DUMP-NEXT:   hasNestedTypes: 1
181 ; DUMP-NEXT:   overloadedOperator: 0
182 ; DUMP-NEXT:   isInterfaceUdt: 0
183 ; DUMP-NEXT:   intrinsic: 0
184 ; DUMP-NEXT:   nested: 0
185 ; DUMP-NEXT:   packed: 0
186 ; DUMP-NEXT:   isRefUdt: 0
187 ; DUMP-NEXT:   scoped: 0
188 ; DUMP-NEXT:   unalignedType: 0
189 ; DUMP-NEXT:   isValueUdt: 0
190 ; DUMP-NEXT:   volatileType: 0
191 ; DUMP-NEXT: }
192 ; DUMP-NEXT: {
193 ; DUMP-NEXT:   symIndexId: 10
194 ; DUMP-NEXT:   symTag: UDT
195 ; DUMP-NEXT:   name: __vc_attributes::event_receiverAttribute
196 ; DUMP-NEXT:   virtualTableShapeId: 3
197 ; DUMP-NEXT:   length: 8
198 ; DUMP-NEXT:   udtKind: struct
199 ; DUMP-NEXT:   constructor: 1
200 ; DUMP-NEXT:   constType: 0
201 ; DUMP-NEXT:   hasAssignmentOperator: 0
202 ; DUMP-NEXT:   hasCastOperator: 0
203 ; DUMP-NEXT:   hasNestedTypes: 1
204 ; DUMP-NEXT:   overloadedOperator: 0
205 ; DUMP-NEXT:   isInterfaceUdt: 0
206 ; DUMP-NEXT:   intrinsic: 0
207 ; DUMP-NEXT:   nested: 0
208 ; DUMP-NEXT:   packed: 0
209 ; DUMP-NEXT:   isRefUdt: 0
210 ; DUMP-NEXT:   scoped: 0
211 ; DUMP-NEXT:   unalignedType: 0
212 ; DUMP-NEXT:   isValueUdt: 0
213 ; DUMP-NEXT:   volatileType: 0
214 ; DUMP-NEXT: }
215 ; DUMP-NEXT: {
216 ; DUMP-NEXT:   symIndexId: 11
217 ; DUMP-NEXT:   symTag: UDT
218 ; DUMP-NEXT:   name: __vc_attributes::moduleAttribute
219 ; DUMP-NEXT:   virtualTableShapeId: 3
220 ; DUMP-NEXT:   length: 96
221 ; DUMP-NEXT:   udtKind: struct
222 ; DUMP-NEXT:   constructor: 1
223 ; DUMP-NEXT:   constType: 0
224 ; DUMP-NEXT:   hasAssignmentOperator: 0
225 ; DUMP-NEXT:   hasCastOperator: 0
226 ; DUMP-NEXT:   hasNestedTypes: 1
227 ; DUMP-NEXT:   overloadedOperator: 0
228 ; DUMP-NEXT:   isInterfaceUdt: 0
229 ; DUMP-NEXT:   intrinsic: 0
230 ; DUMP-NEXT:   nested: 0
231 ; DUMP-NEXT:   packed: 0
232 ; DUMP-NEXT:   isRefUdt: 0
233 ; DUMP-NEXT:   scoped: 0
234 ; DUMP-NEXT:   unalignedType: 0
235 ; DUMP-NEXT:   isValueUdt: 0
236 ; DUMP-NEXT:   volatileType: 0
237 ; DUMP-NEXT: }
238 ; DUMP-NEXT: {
239 ; DUMP-NEXT:   symIndexId: 12
240 ; DUMP-NEXT:   symTag: UDT
241 ; DUMP-NEXT:   name: Nested
242 ; DUMP-NEXT:   virtualTableShapeId: 3
243 ; DUMP-NEXT:   length: 1
244 ; DUMP-NEXT:   udtKind: struct
245 ; DUMP-NEXT:   constructor: 0
246 ; DUMP-NEXT:   constType: 0
247 ; DUMP-NEXT:   hasAssignmentOperator: 0
248 ; DUMP-NEXT:   hasCastOperator: 0
249 ; DUMP-NEXT:   hasNestedTypes: 1
250 ; DUMP-NEXT:   overloadedOperator: 0
251 ; DUMP-NEXT:   isInterfaceUdt: 0
252 ; DUMP-NEXT:   intrinsic: 0
253 ; DUMP-NEXT:   nested: 0
254 ; DUMP-NEXT:   packed: 0
255 ; DUMP-NEXT:   isRefUdt: 0
256 ; DUMP-NEXT:   scoped: 0
257 ; DUMP-NEXT:   unalignedType: 0
258 ; DUMP-NEXT:   isValueUdt: 0
259 ; DUMP-NEXT:   volatileType: 0
260 ; DUMP-NEXT: }
261 ; DUMP-NEXT: {
262 ; DUMP-NEXT:   symIndexId: 13
263 ; DUMP-NEXT:   symTag: UDT
264 ; DUMP-NEXT:   name: Nested::F
265 ; DUMP-NEXT:   virtualTableShapeId: 3
266 ; DUMP-NEXT:   length: 1
267 ; DUMP-NEXT:   udtKind: struct
268 ; DUMP-NEXT:   constructor: 0
269 ; DUMP-NEXT:   constType: 0
270 ; DUMP-NEXT:   hasAssignmentOperator: 0
271 ; DUMP-NEXT:   hasCastOperator: 0
272 ; DUMP-NEXT:   hasNestedTypes: 0
273 ; DUMP-NEXT:   overloadedOperator: 0
274 ; DUMP-NEXT:   isInterfaceUdt: 0
275 ; DUMP-NEXT:   intrinsic: 0
276 ; DUMP-NEXT:   nested: 1
277 ; DUMP-NEXT:   packed: 0
278 ; DUMP-NEXT:   isRefUdt: 0
279 ; DUMP-NEXT:   scoped: 0
280 ; DUMP-NEXT:   unalignedType: 0
281 ; DUMP-NEXT:   isValueUdt: 0
282 ; DUMP-NEXT:   volatileType: 0
283 ; DUMP-NEXT: }
284 ; DUMP-NEXT: {
285 ; DUMP-NEXT:   symIndexId: 14
286 ; DUMP-NEXT:   symTag: UDT
287 ; DUMP-NEXT:   name: Constructor
288 ; DUMP-NEXT:   virtualTableShapeId: 3
289 ; DUMP-NEXT:   length: 1
290 ; DUMP-NEXT:   udtKind: struct
291 ; DUMP-NEXT:   constructor: 1
292 ; DUMP-NEXT:   constType: 0
293 ; DUMP-NEXT:   hasAssignmentOperator: 0
294 ; DUMP-NEXT:   hasCastOperator: 0
295 ; DUMP-NEXT:   hasNestedTypes: 0
296 ; DUMP-NEXT:   overloadedOperator: 0
297 ; DUMP-NEXT:   isInterfaceUdt: 0
298 ; DUMP-NEXT:   intrinsic: 0
299 ; DUMP-NEXT:   nested: 0
300 ; DUMP-NEXT:   packed: 0
301 ; DUMP-NEXT:   isRefUdt: 0
302 ; DUMP-NEXT:   scoped: 0
303 ; DUMP-NEXT:   unalignedType: 0
304 ; DUMP-NEXT:   isValueUdt: 0
305 ; DUMP-NEXT:   volatileType: 0
306 ; DUMP-NEXT: }
307 ; DUMP-NEXT: {
308 ; DUMP-NEXT:   symIndexId: 15
309 ; DUMP-NEXT:   symTag: UDT
310 ; DUMP-NEXT:   name: Class
311 ; DUMP-NEXT:   virtualTableShapeId: 3
312 ; DUMP-NEXT:   length: 1
313 ; DUMP-NEXT:   udtKind: class
314 ; DUMP-NEXT:   constructor: 0
315 ; DUMP-NEXT:   constType: 0
316 ; DUMP-NEXT:   hasAssignmentOperator: 0
317 ; DUMP-NEXT:   hasCastOperator: 0
318 ; DUMP-NEXT:   hasNestedTypes: 0
319 ; DUMP-NEXT:   overloadedOperator: 0
320 ; DUMP-NEXT:   isInterfaceUdt: 0
321 ; DUMP-NEXT:   intrinsic: 0
322 ; DUMP-NEXT:   nested: 0
323 ; DUMP-NEXT:   packed: 0
324 ; DUMP-NEXT:   isRefUdt: 0
325 ; DUMP-NEXT:   scoped: 0
326 ; DUMP-NEXT:   unalignedType: 0
327 ; DUMP-NEXT:   isValueUdt: 0
328 ; DUMP-NEXT:   volatileType: 0
329 ; DUMP-NEXT: }
330 ; DUMP-NEXT: {
331 ; DUMP-NEXT:   symIndexId: 16
332 ; DUMP-NEXT:   symTag: UDT
333 ; DUMP-NEXT:   name: Union
334 ; DUMP-NEXT:   length: 1
335 ; DUMP-NEXT:   udtKind: union
336 ; DUMP-NEXT:   constructor: 0
337 ; DUMP-NEXT:   constType: 0
338 ; DUMP-NEXT:   hasAssignmentOperator: 0
339 ; DUMP-NEXT:   hasCastOperator: 0
340 ; DUMP-NEXT:   hasNestedTypes: 0
341 ; DUMP-NEXT:   overloadedOperator: 0
342 ; DUMP-NEXT:   isInterfaceUdt: 0
343 ; DUMP-NEXT:   intrinsic: 0
344 ; DUMP-NEXT:   nested: 0
345 ; DUMP-NEXT:   packed: 0
346 ; DUMP-NEXT:   isRefUdt: 0
347 ; DUMP-NEXT:   scoped: 0
348 ; DUMP-NEXT:   unalignedType: 0
349 ; DUMP-NEXT:   isValueUdt: 0
350 ; DUMP-NEXT:   volatileType: 0
351 ; DUMP-NEXT: }
352 ; DUMP-NEXT: {
353 ; DUMP-NEXT:   symIndexId: 17
354 ; DUMP-NEXT:   symTag: UDT
355 ; DUMP-NEXT:   name: Operator
356 ; DUMP-NEXT:   virtualTableShapeId: 3
357 ; DUMP-NEXT:   length: 1
358 ; DUMP-NEXT:   udtKind: struct
359 ; DUMP-NEXT:   constructor: 0
360 ; DUMP-NEXT:   constType: 0
361 ; DUMP-NEXT:   hasAssignmentOperator: 0
362 ; DUMP-NEXT:   hasCastOperator: 0
363 ; DUMP-NEXT:   hasNestedTypes: 0
364 ; DUMP-NEXT:   overloadedOperator: 1
365 ; DUMP-NEXT:   isInterfaceUdt: 0
366 ; DUMP-NEXT:   intrinsic: 0
367 ; DUMP-NEXT:   nested: 0
368 ; DUMP-NEXT:   packed: 0
369 ; DUMP-NEXT:   isRefUdt: 0
370 ; DUMP-NEXT:   scoped: 0
371 ; DUMP-NEXT:   unalignedType: 0
372 ; DUMP-NEXT:   isValueUdt: 0
373 ; DUMP-NEXT:   volatileType: 0
374 ; DUMP-NEXT: }
375 ; DUMP-NEXT: {
376 ; DUMP-NEXT:   symIndexId: 18
377 ; DUMP-NEXT:   symTag: UDT
378 ; DUMP-NEXT:   name: Cast
379 ; DUMP-NEXT:   virtualTableShapeId: 3
380 ; DUMP-NEXT:   length: 1
381 ; DUMP-NEXT:   udtKind: struct
382 ; DUMP-NEXT:   constructor: 0
383 ; DUMP-NEXT:   constType: 0
384 ; DUMP-NEXT:   hasAssignmentOperator: 0
385 ; DUMP-NEXT:   hasCastOperator: 1
386 ; DUMP-NEXT:   hasNestedTypes: 0
387 ; DUMP-NEXT:   overloadedOperator: 1
388 ; DUMP-NEXT:   isInterfaceUdt: 0
389 ; DUMP-NEXT:   intrinsic: 0
390 ; DUMP-NEXT:   nested: 0
391 ; DUMP-NEXT:   packed: 0
392 ; DUMP-NEXT:   isRefUdt: 0
393 ; DUMP-NEXT:   scoped: 0
394 ; DUMP-NEXT:   unalignedType: 0
395 ; DUMP-NEXT:   isValueUdt: 0
396 ; DUMP-NEXT:   volatileType: 0
397 ; DUMP-NEXT: }
398 ; DUMP-NEXT: {
399 ; DUMP-NEXT:   symIndexId: 19
400 ; DUMP-NEXT:   symTag: UDT
401 ; DUMP-NEXT:   name: Nothing
402 ; DUMP-NEXT:   virtualTableShapeId: 3
403 ; DUMP-NEXT:   length: 1
404 ; DUMP-NEXT:   udtKind: struct
405 ; DUMP-NEXT:   constructor: 0
406 ; DUMP-NEXT:   constType: 0
407 ; DUMP-NEXT:   hasAssignmentOperator: 0
408 ; DUMP-NEXT:   hasCastOperator: 0
409 ; DUMP-NEXT:   hasNestedTypes: 0
410 ; DUMP-NEXT:   overloadedOperator: 0
411 ; DUMP-NEXT:   isInterfaceUdt: 0
412 ; DUMP-NEXT:   intrinsic: 0
413 ; DUMP-NEXT:   nested: 0
414 ; DUMP-NEXT:   packed: 0
415 ; DUMP-NEXT:   isRefUdt: 0
416 ; DUMP-NEXT:   scoped: 0
417 ; DUMP-NEXT:   unalignedType: 0
418 ; DUMP-NEXT:   isValueUdt: 0
419 ; DUMP-NEXT:   volatileType: 0
420 ; DUMP-NEXT: }
421 ; DUMP-NEXT: {
422 ; DUMP-NEXT:   symIndexId: 20
423 ; DUMP-NEXT:   symTag: UDT
424 ; DUMP-NEXT:   name: Assignment
425 ; DUMP-NEXT:   virtualTableShapeId: 3
426 ; DUMP-NEXT:   length: 1
427 ; DUMP-NEXT:   udtKind: struct
428 ; DUMP-NEXT:   constructor: 0
429 ; DUMP-NEXT:   constType: 0
430 ; DUMP-NEXT:   hasAssignmentOperator: 1
431 ; DUMP-NEXT:   hasCastOperator: 0
432 ; DUMP-NEXT:   hasNestedTypes: 0
433 ; DUMP-NEXT:   overloadedOperator: 1
434 ; DUMP-NEXT:   isInterfaceUdt: 0
435 ; DUMP-NEXT:   intrinsic: 0
436 ; DUMP-NEXT:   nested: 0
437 ; DUMP-NEXT:   packed: 0
438 ; DUMP-NEXT:   isRefUdt: 0
439 ; DUMP-NEXT:   scoped: 0
440 ; DUMP-NEXT:   unalignedType: 0
441 ; DUMP-NEXT:   isValueUdt: 0
442 ; DUMP-NEXT:   volatileType: 0
443 ; DUMP-NEXT: }
444 ; DUMP-NEXT: {
445 ; DUMP-NEXT:   symIndexId: 21
446 ; DUMP-NEXT:   symTag: UDT
447 ; DUMP-NEXT:   name: Nothing
448 ; DUMP-NEXT:   unmodifiedTypeId: 19
449 ; DUMP-NEXT:   virtualTableShapeId: 3
450 ; DUMP-NEXT:   length: 1
451 ; DUMP-NEXT:   udtKind: struct
452 ; DUMP-NEXT:   constructor: 0
453 ; DUMP-NEXT:   constType: 1
454 ; DUMP-NEXT:   hasAssignmentOperator: 0
455 ; DUMP-NEXT:   hasCastOperator: 0
456 ; DUMP-NEXT:   hasNestedTypes: 0
457 ; DUMP-NEXT:   overloadedOperator: 0
458 ; DUMP-NEXT:   isInterfaceUdt: 0
459 ; DUMP-NEXT:   intrinsic: 0
460 ; DUMP-NEXT:   nested: 0
461 ; DUMP-NEXT:   packed: 0
462 ; DUMP-NEXT:   isRefUdt: 0
463 ; DUMP-NEXT:   scoped: 0
464 ; DUMP-NEXT:   unalignedType: 0
465 ; DUMP-NEXT:   isValueUdt: 0
466 ; DUMP-NEXT:   volatileType: 0
467 ; DUMP-NEXT: }
468 ; DUMP-NEXT: {
469 ; DUMP-NEXT:   symIndexId: 22
470 ; DUMP-NEXT:   symTag: UDT
471 ; DUMP-NEXT:   name: Nothing
472 ; DUMP-NEXT:   unmodifiedTypeId: 19
473 ; DUMP-NEXT:   virtualTableShapeId: 3
474 ; DUMP-NEXT:   length: 1
475 ; DUMP-NEXT:   udtKind: struct
476 ; DUMP-NEXT:   constructor: 0
477 ; DUMP-NEXT:   constType: 0
478 ; DUMP-NEXT:   hasAssignmentOperator: 0
479 ; DUMP-NEXT:   hasCastOperator: 0
480 ; DUMP-NEXT:   hasNestedTypes: 0
481 ; DUMP-NEXT:   overloadedOperator: 0
482 ; DUMP-NEXT:   isInterfaceUdt: 0
483 ; DUMP-NEXT:   intrinsic: 0
484 ; DUMP-NEXT:   nested: 0
485 ; DUMP-NEXT:   packed: 0
486 ; DUMP-NEXT:   isRefUdt: 0
487 ; DUMP-NEXT:   scoped: 0
488 ; DUMP-NEXT:   unalignedType: 0
489 ; DUMP-NEXT:   isValueUdt: 0
490 ; DUMP-NEXT:   volatileType: 1
491 ; DUMP-NEXT: }
492 ; DUMP-NEXT: {
493 ; DUMP-NEXT:   symIndexId: 23
494 ; DUMP-NEXT:   symTag: UDT
495 ; DUMP-NEXT:   name: Nothing
496 ; DUMP-NEXT:   unmodifiedTypeId: 19
497 ; DUMP-NEXT:   virtualTableShapeId: 3
498 ; DUMP-NEXT:   length: 1
499 ; DUMP-NEXT:   udtKind: struct
500 ; DUMP-NEXT:   constructor: 0
501 ; DUMP-NEXT:   constType: 1
502 ; DUMP-NEXT:   hasAssignmentOperator: 0
503 ; DUMP-NEXT:   hasCastOperator: 0
504 ; DUMP-NEXT:   hasNestedTypes: 0
505 ; DUMP-NEXT:   overloadedOperator: 0
506 ; DUMP-NEXT:   isInterfaceUdt: 0
507 ; DUMP-NEXT:   intrinsic: 0
508 ; DUMP-NEXT:   nested: 0
509 ; DUMP-NEXT:   packed: 0
510 ; DUMP-NEXT:   isRefUdt: 0
511 ; DUMP-NEXT:   scoped: 0
512 ; DUMP-NEXT:   unalignedType: 0
513 ; DUMP-NEXT:   isValueUdt: 0
514 ; DUMP-NEXT:   volatileType: 1
515 ; DUMP-NEXT: }
516 ; DUMP-NEXT: {
517 ; DUMP-NEXT:   symIndexId: 24
518 ; DUMP-NEXT:   symTag: UDT
519 ; DUMP-NEXT:   name: Nothing
520 ; DUMP-NEXT:   unmodifiedTypeId: 19
521 ; DUMP-NEXT:   virtualTableShapeId: 3
522 ; DUMP-NEXT:   length: 1
523 ; DUMP-NEXT:   udtKind: struct
524 ; DUMP-NEXT:   constructor: 0
525 ; DUMP-NEXT:   constType: 0
526 ; DUMP-NEXT:   hasAssignmentOperator: 0
527 ; DUMP-NEXT:   hasCastOperator: 0
528 ; DUMP-NEXT:   hasNestedTypes: 0
529 ; DUMP-NEXT:   overloadedOperator: 0
530 ; DUMP-NEXT:   isInterfaceUdt: 0
531 ; DUMP-NEXT:   intrinsic: 0
532 ; DUMP-NEXT:   nested: 0
533 ; DUMP-NEXT:   packed: 0
534 ; DUMP-NEXT:   isRefUdt: 0
535 ; DUMP-NEXT:   scoped: 0
536 ; DUMP-NEXT:   unalignedType: 1
537 ; DUMP-NEXT:   isValueUdt: 0
538 ; DUMP-NEXT:   volatileType: 0
539 ; DUMP-NEXT: }