The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Результаты эксперимента по пересборке Debian используя GCC 4.1

02.04.2006 00:09

Martin Michlmayr, один из разработчиков Debian, провел эксперимент пересобрав коллекцию пакетов Debian Etch при помощи GCC 4.1.

При сборке 6192 пакетов было выявлено более 500 новых ошибок, из которых 280 связаны с ужесточением проверок правильности кода в GCC. 2/3 всех обнаруженных ошибок уже исправлены. Наиболее типичные ошибки представлены на странице "Common syntax errors in C++".

Примечательно, что в целом GCC 4.1 показал себя положительно. В процессе эксперимента было выявлено 6 ошибок в самом компиляторе, большинство из которых было практически сразу исправлено разработчиками GCC.

  1. Главная ссылка к новости (http://lists.debian.org/debian...)
Лицензия: CC BY 3.0
Источник: newsforge.com
Короткая ссылка: https://opennet.ru/7257-linux
Ключевые слова: linux, debian, debug, gcc
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (9) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, CR (?), 00:16, 02/04/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хмм... Надо будет погонять 4.1 в качестве syntax checker-а в своих проектах.
     
     
  • 2.3, pavlinux (??), 01:34, 02/04/2006 [^] [^^] [^^^] [ответить]  
  • +/
    ...да уж, хотя интересно, почему никто раньше об этом не думал.
    Есть же куча прог, на проверку как синтаксиса так и правильности
    написания выражений. Правда все хорошие денег немеряно стоят.
     
     
  • 3.8, horsh (ok), 04:11, 03/04/2006 [^] [^^] [^^^] [ответить]  
  • +/

    > ...да уж, хотя интересно, почему никто раньше об этом не думал.

    еще лучше использовать для этих целей не две версии одного компилятора,
    а принципиально другой компилятор.
    Много раз наблюдал как сановский из Sun Studio и gcc находили совершенно
    различные тонкие места в коде.

    > Есть же куча прог, на проверку как синтаксиса так и правильности
    > написания выражений. Правда все хорошие денег немеряно стоят.

    тот же сановский lint теперь стал вполне "free as in beer for any use" и
    он ловит много ошибок, которые компилятор норовит пропустить.
    Не только синтаксис, но и вполне себе семантику.

     
  • 2.4, pavlinux (??), 01:52, 02/04/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Специально для CR: нашел файлик с ссылками spell/syntax checker_ов:

    http://www.kernel.org/pub/software/devel/sparse/SCCS/
    http://www.rocklinux.net/packages/splint.html
    http://lclint.cs.virginia.edu/
    http://www.gimpel.com/html/flex.htm

     

  • 1.2, Di_ (?), 01:24, 02/04/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Если ваша первая программа скомпилилась без ршибок, сообщите об этом системщику - он исправит ошибки в компиляторе :)
     
  • 1.5, Аноним (-), 08:55, 02/04/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    привет всем!
    а ссылочку кто нибудь знает на исправления этих 6 ошибочек в компиляторе ???
     
  • 1.6, Аноним (-), 09:54, 02/04/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    - gcc ICE: #356231 (gnubik_2.2-5)
       http://gcc.gnu.org/PR26672 - fixed
    - g++ ICE: #356569 (3ddesktop_0.2.9-5.1)
       http://gcc.gnu.org/PR26757 - test case needs further reduction
    - gcc bug: #356574 (address of register requested)
       http://gcc.gnu.org/PR26004 - fixed
    - g++ bug: #356548 (cannot bind packed field)
       http://gcc.gnu.org/PR26670 - not yet assigned but related to known bugs
    - g++ bug: #356435 (no constructor)  [package bug: #356245]
       http://gcc.gnu.org/PR26755 - waiting
       This is a binary incompatibility!  4.0 has a different behaviour to
       3.3 and 4.1, which means that linking 4.1 code against 4.0 libraries
       may fail.  4.0 and 4.1 were supposed to be binary compatible so I'm not
       sure what will be done about this.
    - gcc bug: #356896 (miscompiles code, leading to segfault in program)
       http://gcc.gnu.org/PR26763 - confirmed
     
  • 1.7, Роман (??), 11:26, 02/04/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Интересно, а кто может сказать про то, что при сборке 6192 пакетов было выявлено более 500 новых ошибок и исправили ли их и для компиляции при старом GCC 2/3, а то может так и остались.

    Любопытства ради. Глянуть бы.

     
  • 1.9, goof89 (?), 08:03, 05/04/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    GCC 4.1 не тянет, не понраилось. Приходится искать кучу патчей, что не очень приятно, так что пока юзаю только 3.3.5 и доволен
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру