我正在尝试将一些 Phobos 代码转换为它的 Tango 等效代码,但我被困在这段我不完全理解的代码上:
OutBuffer codebuf;
(...)
void gen(Loc loc, uint opcode, uint argc, ...)
{
codebuf.reserve((1 + argc) * uint.sizeof);
codebuf.write(combine(loc, opcode));
for (uint i = 1; i <= argc; i++)
{
codebuf.write(va_arg!(uint)(_argptr));
}
}
特别是 va_arg 导致错误:
dmdscript_tango\irstate.d(215): Error: undefined identifier va_arg
dmdscript_tango\irstate.d(215): Error: function expected before (), not va_arg of type int
有没有人能够分享一些关于如何解决这个问题的见解?:-)