[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

g++ из stable



Здравствуйте.

у меня стоят gcc и g++ версии 2.95.4-14

почему-то в g++ не обрабатываются макросы с переменным числом
параметров

вот пример кода:
#define a(aaa,...) printf(aaa, __VA_ARGS__)
                                           
int main(void) {                           
 return a("\n%d\n",4);                     
}                                          

этот код нормально комплируется gcc и третьей версией g++, однако g++
2.95 выдает ошибку:
a.c:1: badly punctuated parameter list in `#define'

переход на новую версию g++ нежелателен (так как связан с
перекомпиляцией динамических библиотек).

можно ли заставить g++ этой версии нормально отрабатывать iso-версию
макросов с переменным числом параметров? насчет gcc-версии я в курсе,
но не хочется переделывать программу и терять в портабельности.



Reply to: