brintos

brintos / llvm-project-archived public Read only

0
0
Text · 596 B · a02671e Raw
38 lines · plain
1// RUN: llvm-tblgen %s | FileCheck %s2// XFAIL: vg_leak3 4// CHECK: --- Defs ---5 6// CHECK: def X {7// CHECK:   foo Y = anonymous_0;8// CHECK: }9 10// CHECK: def ZD {11// CHECK:   foo Z = anonymous_1;12// CHECK: }13 14// CHECK: def anonymous_0 {15// CHECK:   int THEVAL = 1;16// CHECK: }17 18// CHECK: def anonymous_1 {19// CHECK:   int THEVAL = 42;20// CHECK: }21 22class foo<int X> { int THEVAL = X; }23def foo_imp : foo<1>;24 25def x {26  foo Y = foo_imp;    // This works.27}28 29def X {30  foo Y = foo<1>;     // This should work too, synthesizing a new foo<1>.31}32 33class Z<int X> {34  foo Z = foo<X>;35}36 37def ZD : Z<42>;38