Я пытаюсь скомпилировать файл, для которого требуются функции, включенные в cmath.Я не верю, что сам мой код виноват в возникновении этой ошибки, я подозреваю, что конфигурация (она сохраняется даже после того, как весь не включенный код прокомментирован), но не знаю, что происходит не так.Я компилирую на хосте Windows, 64 бит.Помимо добавления конфигурации сборки masm, я не верю, что я изменил какие-либо параметры компиляции на нестандартные, и проблема сохраняется после отключения masm и установки целевой конфигурации на 32-разрядную версию.Вот мой сгенерированный вывод:
1>...\VStudio\VC\include\stdlib.h(467): error C2062: type 'long' unexpected
1>...\VStudio\VC\include\stdlib.h(467): error C2062: type 'long' unexpected
1>...\VStudio\VC\include\stdlib.h(467): error C2059: syntax error : ')'
1>...\VStudio\VC\include\stdlib.h(468): error C2143: syntax error : missing ';' before '{'
1>...\VStudio\VC\include\stdlib.h(468): error C2447: '{' : missing function header (old-style formal list?)
1>...\VStudio\VC\include\stdlib.h(471): error C2062: type '__int64' unexpected
1>...\VStudio\VC\include\stdlib.h(471): error C2062: type '__int64' unexpected
1>...\VStudio\VC\include\stdlib.h(471): error C2059: syntax error : ')'
1>...\VStudio\VC\include\stdlib.h(472): error C2143: syntax error : missing ';' before '{'
1>...\VStudio\VC\include\stdlib.h(472): error C2447: '{' : missing function header (old-style formal list?)
Любая помощь будет принята с благодарностью.
Редактировать:
Я нашел проблемную строку.Вопреки моим ожиданиям, ошибка действительно возникает в коде и является ошибкой строки, унаследованной от предыдущей версии:
#define abs(a) ((a)<0? -(a):(a))
отвечает за мои проблемы.