|
2.30, Я (??), 22:01, 19/03/2017 [^] [^^] [^^^] [ответить]
| –4 +/– |
Потому что компилятор сам заменит printf() на puts()
| |
|
1.5, Аноним (5), 12:13, 19/03/2017 [ответить] [﹢﹢﹢] [ · · · ]
| –12 +/– |
у gcc вообще основная фича, в том что они косячут и годами эти ошибки не хотят исправлять. причем ошибки на ошибки у них там вполне накладываться друг на друга могу. ну а то что все управляющие флаги игнорируются в чём то, и всегда генерется определенный код это уже каноническая особенность gcc, например попробуйте без cmov комманд бинарник делать.
| |
|
2.7, freehck (ok), 12:20, 19/03/2017 [^] [^^] [^^^] [ответить]
| –2 +/– |
> у gcc вообще основная фича, в том что они косячут и годами эти ошибки не хотят исправлять.
Ммм, как интересно.
> В процессе тестирования новой ветки Fedora, в которой будет задействован GCC 7 (релиз GCC 7 ожидается в апреле)
А может быть проблема в том, что Fedora, которая испытательный-полигон-на-пользователях-для-RedHat пихает в продакшен нерелизнутые версии компилятора?
| |
|
3.10, нонанон (?), 12:33, 19/03/2017 [^] [^^] [^^^] [ответить]
| +5 +/– |
> А может быть проблема в том, что Fedora, которая испытательный-полигон-на-пользователях-для-RedHat пихает в продакшен нерелизнутые версии компилятора?
Ну сказано же ну: "Ошибка присутствует достаточно давно и проявлялась как минимум в ветке GCC 4"
| |
|
4.15, freehck (ok), 13:25, 19/03/2017 [^] [^^] [^^^] [ответить]
| –1 +/– |
На то он и тестируемая ветвь компилятора, чтобы выявлять вот такие вот баги. Да, некоторые из них старые, но ведь вскрылось-то только сейчас. Это вообще весьма распространённое явление в больших проектах, когда две ошибки компенсируют друг друга, и остаются незамеченными долгое время.
Вот если бы об ошибке знали, начиная с релиза GCC4 и игнорировали - был бы уже другой разговор. А вот на таких вот новостях кричать "косячат и не хотят исправлять" - нонсенс.
| |
|
5.16, Аноним (-), 13:46, 19/03/2017 [^] [^^] [^^^] [ответить]
| +/– |
Короче, мы вас поняли, все версии gcc с 4 по 7 - тестовый полигон, косяки в них не считаются.
| |
|
4.19, Аноним (-), 14:16, 19/03/2017 [^] [^^] [^^^] [ответить]
| +3 +/– |
Ошибка в том что компилировалось, хотя не должно было. А в GCC 7 исправили. И теперь не компилится.
| |
|
5.44, Michael Shigorin (ok), 11:07, 20/03/2017 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Ошибка в том что компилировалось, хотя не должно было.
> А в GCC 7 исправили. И теперь не компилится.
Как там было у Немет: "если программа собралась с первого раза -- позовите системного программиста, он исправит компилятор".
| |
|
4.20, Аноним (-), 14:31, 19/03/2017 [^] [^^] [^^^] [ответить]
| +2 +/– |
До этой части что не позволило дочитать?
> Проблема всплыла только после внесения в GCC 7 изменения, исправляющего ошибку разбора параметров командной строки | |
|
|
|
1.23, Аноним (-), 15:19, 19/03/2017 [ответить] [﹢﹢﹢] [ · · · ]
| –3 +/– |
> в которой будет задействован GCC 7 (релиз GCC 7 ожидается в апреле),
Я правильно понял: взяли сырой билд и надулись, что он не работает как стабильный релиз?
| |
|
2.26, Аноним (-), 19:20, 19/03/2017 [^] [^^] [^^^] [ответить]
| +1 +/– |
Наоборот, в GCC 7 поправили древний баг и после этого в Fedora перестала собираться куча пакетов.
| |
|
3.27, Аноним (-), 20:06, 19/03/2017 [^] [^^] [^^^] [ответить]
| –2 +/– |
> Наоборот, в GCC 7 поправили древний баг и после этого в Fedora перестала собираться куча пакетов.
Руководи Линус разработкой gcc, он бы откатил этот патч, как это было сделано несколько лет назад с подсистемой терминалов, после чего мейнтейнер сложил обязанности по поддержанию подсистемы и теперь она никем не поддерживается.
| |
|
4.33, Аноним (-), 23:46, 19/03/2017 [^] [^^] [^^^] [ответить]
| +/– |
Эти пакеты не должны были собираться с опцией "-Werror=format-security", так как в них был кривой код, на который эта опция обязана выдавать ошибку.
| |
|
|
4.39, nobody (??), 09:47, 20/03/2017 [^] [^^] [^^^] [ответить]
| –2 +/– |
Не исключено :-) В мире GNU во всяком случае.
Ну а вообще в MS VC++ всё ещё хуже. Там десятилетиями даже С++98 правильно не реализован. Сейчас, вроде, взялись за ум, даже на обратную совместимость плюнули. Поглядим, что из этого выйдет
| |
|
|
6.56, nobody (??), 09:59, 21/03/2017 [^] [^^] [^^^] [ответить]
| +/– |
Вот слава Аллаху, что эти времена проходят. Сейчас осталось только две программные платформы: POSIX и Windows. Жду не дождусь, когда последняя или сдохнет, или переродится в POSIX. Это будет оргазм для системного программиста
| |
|
5.55, Led (ok), 00:46, 21/03/2017 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Поглядим, что из этого выйдет
Вендузятник должен не поглядеть, а страдать.
| |
|
|
3.49, анонимус вульгарис (?), 14:27, 20/03/2017 [^] [^^] [^^^] [ответить]
| +/– |
Нет, поправили древний баг, после чего стала собираться кучка пакетов с дырявым кодом, который должен был зафейлить сборку.
| |
|
|
1.34, Аноним (-), 04:26, 20/03/2017 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
> printf(variable) на printf("%s", variable))
Что за адский хардкодер лабает такие вещи?
| |
|
2.35, Аноним (-), 05:37, 20/03/2017 [^] [^^] [^^^] [ответить]
| +/– |
Больше чем ты думаешь. Такое даже в sudo находили (кажется было в отладочных сообщениях, включалось через -vvvvvv).
| |
|
1.40, nobody (??), 09:50, 20/03/2017 [ответить] [﹢﹢﹢] [ · · · ]
| –3 +/– |
> Ошибка присутствует достаточно давно и проявлялась как минимум в ветке GCC 4
> отложить альфа-выпуск Fedora 26 на одну неделю в связи с невыполнением критериев качества. В частности, в репозитории остаются неисправленными 4 проблемы, которые отнесены к категории блокирующих выпуск
То есть больше 10 лет баги никто не видел, с ними выпускали релизы, а тут вдруг внезапно они стали блокирующими :-\
| |
1.41, anonymous (??), 09:53, 20/03/2017 [ответить] [﹢﹢﹢] [ · · · ]
| –3 +/– |
> одновременное указание "-Werror=format-security" и "-Wall" или "-Wformat"
а так же стопятьсот избыточных, повторяющихся и взаимно-противоречивых опций, которые сборщики федоры подсовывают в сборку пакетов...
| |
1.45, snmp agent (?), 13:04, 20/03/2017 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
Интересно, я один не врубался, о каких "проблемах с форматированием строк" речь, пока не посмотрел в man gcc?
| |
1.48, Аноним (-), 14:04, 20/03/2017 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Уж сколько лет известно об printf format string уязвимостях, а люди упорно используют printf даже в С++ программах, вместо iostreams.
| |
|
2.54, freehck (ok), 21:39, 20/03/2017 [^] [^^] [^^^] [ответить]
| +/– |
Ну так уязвимости форматных строк - сродни XSS в браузерах. Не давайте пользователю заполнять формат, и всё будет хорошо.
| |
|
|