Am 10.02.2013 09:18, schrieb Benjamin Thaut:
import core.vararg; import std.stdio;void print(string fmt, ...) { auto arg = va_arg!(const(char)[])(_argptr); writefln(fmt ~ arg); } void main(string[] args) { print("+++","---"); }
This only seems to happen when the argument before the variadic argument list is bigger then 8 byte. This works:
void print(int fmt, ...) { auto arg = va_arg!(const(char)[])(_argptr); writefln("%s %s",fmt,arg); } void main(string[] args) { print(1,"---"); }