/* RUN_OUTPUT: --- value: -5 value: -5 --- */ // https://issues.dlang.org/show_bug.cgi?id=21506 import core.stdc.stdio; import core.stdc.stdarg; extern(C++) { void print(long a, va_list args){ vprintf("value: %d\n", args); } void proxy0(long a, long b, long c, long d, bool e, ...){ va_list ap; va_start(ap, e); print(a, ap); va_end(ap); // print(a, _argptr); } void proxy1(long d, bool e, ...){ va_list ap; va_start(ap, e); print(d, ap); va_end(ap); // print(d, _argptr); } } void main(){ int var = -5; proxy0(1, 2, 3, 4, true, var); proxy1(4, true, var); }