dmd/compiler/test/runnable/test21120.d
2022-07-09 18:53:07 +02:00

27 lines
464 B
D

// https://issues.dlang.org/show_bug.cgi?id=21120
module one.two.three;
struct S {}
struct StructTemplate(T)
{
int a = 123; // non-zero initialized
ref const(StructTemplate) getInitSymbol()
{
return initSymbol!StructTemplate;
}
}
template initSymbol(T)
{
pragma(mangle, "_D" ~ T.mangleof[1..$] ~ "6__initZ")
extern immutable T initSymbol;
}
void main()
{
StructTemplate!S inst;
assert(inst.getInitSymbol() == inst);
}