LINUX.ORG.RU

История изменений

Исправление firkax, (текущая версия) :

ARM ADS, который даже не может скомпилировать такое:

Всё правильно он ругается, объявления переменных у нормальных людей расположены строго до кода. Не надо эти с++-манеры в си тащить.

#define va_start(a, b) { __builtin_va_list tmp; __builtin_va_start(tmp, b); a = &tmp; }

Сомнительная конструкция. Ну, может она конкретно у тебя и работает, но лучше этот tmp вынести наружу т.к. тут получается указатель на локальную переменную, которая закончила свою область видимости и срок жизни. По-моему компилятор вполне может её после закрывающей фигурной скобки оптимизировать и занять это место какой-то другой переменной, всё испортив.

Исправление firkax, :

ARM ADS, который даже не может скомпилировать такое:

Всё правильно он ругается, объявления переменных у нормальных людей расположены строго до кода. Не надо эти с++-манеры в си тащить.

Исходная версия firkax, :

Всё правильно он ругается, объявления переменных у нормальных людей расположены строго до кода. Не надо эти с++-манеры в си тащить.