[devel] Добавление -Werror=format-security

Alexey Tourbin at на altlinux.ru
Чт Июн 4 07:13:16 MSD 2009


On Thu, Jun 04, 2009 at 02:45:21AM +0400, Dmitry V. Levin wrote:
> > > Мне кажется что не надо включать -Werror флаги в компиляторе по
> > > умолчанию.  Компилятор это же не только для сборки пакетов, чтобы
> > > местные политики туда засовывать.
> > >
> > > Мы и так уже засунули в компилятор --as-needed и FORTIFY_SOURCE.
> > 
> > Лично я их благополучно оттуда выкинул. И так же благополучно включил 
> > по-умолчанию в %optflags. С тоски зрения сборки пакетов у меня ничего не 
> > изменилось,
> 
> Это значит, что вам повезло с хорошим качеством и малым количеством
> пакетов.
> 
> > зато компилятором теперь можно пользоваться НЕ ТОЛЬКО для сборки 
> > пакетов. Я считаю (как обычно - ошибочно), что gcc разрешено пользоваться не 
> > только для сборки ALT-пакетов:)
> 
> Ответ на вопрос, что лучше, пропатчить все пакеты на тему правильного
> использования %optflags, или патчить сборку сторонней софтины на тему
> отключения некоторых умолчаний, добавленных в gcc, у каждого свой.
> Если бы на вопросы подобного рода не было бы многообразия ответов, то
> не было бы такого многообразия дистрибутивов.

Дело ещё в том что gcc как величайшее достижение человечества особо не
вызывает энтузиазма.  Известно например что msvc генерирует код который
работает в полтора раза быстрее чем gcc.  А уж какие он предупреждения
выдает это спасибо на том что есть.

Например, что касается конструкций вида printf(str).  Пусть эта
конструкция находится в статической функции.  Сможет ли gcc в таком
случае проверить все вызовы статической функции, включая полный откат
назад (back propagation) по всем вызывающим статическим функциям?
То есть подавить предупреждение, если вызов с неправильным аргументом
str логически невозможен?
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 197 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20090604/0795f818/attachment.bin>


Подробная информация о списке рассылки Devel