Я использую VS2010 Pro компилятор, когда я строю на x64, я получаю ниже ошибки компиляции. Компилируется отлично на x86. ошибка C2704: '': __va_start присущий допускается только в переменной длиныЗначение ошибки компиляции: ошибка C2704: __va_start intrinsic разрешено только в varargs?
Декларация метода:
int foo(char* buf, int maxChar, const char*& fmt);
определение:
int foo(char* buf, int maxChar, const char*& fmt)
{
int numChar = 0;
if (fmt)
{
va_list plist;
va_start(plist, fmt);
numChar = _vsnprintf(buf, maxChar, fmt, plist);
va_end(plist);
}
return numChar;
}
Какой смысл ошибки? Как это исправить?
Спасибо, почему это не проблема в компиляции x86? – Coder777
@John Это может быть проблемой, вы просто не получаете диагностику. – Yakk
Мое единственное предположение (почему вы не получаете сообщение об ошибке в x86) является ошибкой компилятора. – drescherjm