blob: 2a18539f95aefe196bedd0aa7aa8ead20eaffd9b [file] [log] [blame]
template forward(args...)
{
@property fwd()() { return args[0]; }
static assert(__traits(compiles, { auto ex = fwd; }));
alias fwd forward;
}
void initializeClassInstance(C, Args...)(C chunk, auto ref Args args)
{
chunk.__ctor(forward!args);
}
void main()
{
static int si = 0;
static class C { this(int) { ++si; } }
void[__traits(classInstanceSize, C)] buff = void;
auto c = cast(C) buff.ptr;
initializeClassInstance(c, 0);
assert(si);
}