<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Обобщение опыта Coverity по статистическому анализу миллиард...</title>
    <link>https://www.solaris.opennet.ru/openforum/vsluhforumID3/63892.html</link>
    <description>Разработчики системы для автоматизированного выявления ошибок Coverity опубликовали статью (http://cacm.acm.org/magazines/2010/2/69354-a-few-billion-lines-of-code-later/fulltext), в которой обобщили наиболее важные выводы о природе возникновения ошибок в реальных проектах. Приводится пример важности обнаружения трудноуловимых глупых ошибок, вызванных невнимательностью разработчиков, но часто приводящих к серьезным последствиям. Например конструкция &quot;if(getuid() !=0 &amp;&amp; geteuid == 0)&#123;ErrorF(&quot;only root&quot;);exit(1);&#125;&quot; вызвала серьезную уязвимость в X-сервере, так как использование &quot;geteuid&quot; вместо &quot;geteuid()&quot; привело к сравнению указателя на функцию, который никогда не равен 0, соответственно условие всегда было ложным.&lt;br&gt;&lt;br&gt;URL: http://cacm.acm.org/magazines/2010/2/69354-a-few-billion-lines-of-code-later/fulltext&lt;br&gt;Новость: http://www.opennet.ru/opennews/art.shtml?num=25423&lt;br&gt;</description>

<item>
    <title>C vs Pascal (Mna)</title>
    <link>https://www.solaris.opennet.ru/openforum/vsluhforumID3/63892.html#22</link>
    <pubDate>Sat, 20 Feb 2010 18:36:20 GMT</pubDate>
    <description>&amp;gt;В паскале ваша конструкция компилироваться не будет &lt;br&gt;&lt;br&gt;В этом и point: Паскаль - для бумажным программистов. Указателя в жизни не нюхавших.&lt;br&gt;Потому и работа с указателями с нем - неудобна.&lt;br&gt;&lt;br&gt;и компилироваться не будет, но какой ценой?&lt;br&gt;&lt;br&gt;&amp;gt; Это во первых. &lt;br&gt;&lt;br&gt;Pascal compiler detected!! :)&lt;br&gt;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Во вторых, как утверждал один из ораторов выше, взятие адреса функции выполняется &lt;br&gt;&amp;gt;отдельным оператором. &lt;br&gt;&lt;br&gt;это то же самое &quot;во-первых&quot;. :)&lt;br&gt;&lt;br&gt;&amp;gt;Поэтому как ни пиши, и сравнивай хоть с нулем хоть с Nil &lt;br&gt;&amp;gt;- будет два вызова функции. &lt;br&gt;&lt;br&gt;для сравнения указателей функция не вызывается ни в каком себя уважающем языке :)&lt;br&gt;даже в паскале. Вы наверное так и не вышли за ментальные рамки Виртуальной-Паскаль-машины.&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;gt;Строгая типизация - рулит. &lt;br&gt;&lt;br&gt;Но только для студентов первого курса.&lt;br&gt;&lt;br&gt;Учитывая акселерацию, сейчас - для нулевого..&lt;br&gt;&lt;br&gt;В реальных задачах это больше помеха: компилятор никогда не умнее программиста. Программист компилирует свои знания в исходный код. чем высокоуровнее этот код тем всем лучше. а если не так,</description>
</item>

<item>
    <title>Обобщение опыта Coverity по статистическому анализу миллиард... (pavlinux)</title>
    <link>https://www.solaris.opennet.ru/openforum/vsluhforumID3/63892.html#21</link>
    <pubDate>Wed, 17 Feb 2010 22:23:15 GMT</pubDate>
    <description>&amp;gt;Это статический анализатор кода. &lt;br&gt;&lt;br&gt;Что это таке, я знаю. Но кроме слухов и радостных, слюниипускающих рассказов не слышал :)&lt;br&gt;&lt;br&gt;&amp;gt;У нас в компании используется: для С и C++ кода. Весьма полезная штука. &lt;br&gt;&amp;gt;И весьма продвинутая. &lt;br&gt;&lt;br&gt;Дайте поиграться... &lt;br&gt;&amp;gt;Для маломальски крупных проектов нужно иметь что-то подобное. &lt;br&gt;&amp;gt;Кстати, простенький вариант статического анализатора: http://cppcheck.sourceforge.net/ &lt;br&gt;&lt;br&gt;видали, юзали, ...&lt;br&gt;&lt;br&gt;Я юзаю связку splint + rats + its4 + flawfinder +  pscan + gibberish + boot + mops + bogosec + boon + ckit + magic + valgrid + smatch :) &lt;br&gt;&lt;br&gt;Но так достало их постоянно настраивать ... &lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Обобщение опыта Coverity по статистическому анализу миллиард... (Евгений)</title>
    <link>https://www.solaris.opennet.ru/openforum/vsluhforumID3/63892.html#20</link>
    <pubDate>Tue, 16 Feb 2010 05:27:27 GMT</pubDate>
    <description>Это статический анализатор кода. &lt;br&gt;&lt;br&gt;У нас в компании используется: для С и C++ кода. Весьма полезная штука.&lt;br&gt;И весьма продвинутая.&lt;br&gt;Для маломальски крупных проектов нужно иметь что-то подобное.&lt;br&gt;&lt;br&gt;Кстати, простенький вариант статического анализатора: http://cppcheck.sourceforge.net/&lt;br&gt;</description>
</item>

<item>
    <title>Обобщение опыта Coverity по статистическому анализу миллиард... (Аноним)</title>
    <link>https://www.solaris.opennet.ru/openforum/vsluhforumID3/63892.html#19</link>
    <pubDate>Tue, 16 Feb 2010 04:40:55 GMT</pubDate>
    <description>Нет, не только..&lt;br&gt;</description>
</item>

<item>
    <title>C vs Pascal (ram_scan)</title>
    <link>https://www.solaris.opennet.ru/openforum/vsluhforumID3/63892.html#18</link>
    <pubDate>Tue, 16 Feb 2010 03:23:37 GMT</pubDate>
    <description>В паскале ваша конструкция компилироваться не будет и язык вам ошибку сделать не даст.&lt;br&gt;&lt;br&gt;Если это функция без аргументов, то скобки там лишние. Это во первых.&lt;br&gt;&lt;br&gt;Во вторых, как утверждал один из ораторов выше, взятие адреса функции выполняется отдельным оператором.&lt;br&gt;&lt;br&gt;Поэтому как ни пиши, и сравнивай хоть с нулем хоть с Nil - будет два вызова функции.&lt;br&gt;&lt;br&gt;Строгая типизация - рулит. &lt;br&gt;</description>
</item>

<item>
    <title>Обобщение опыта Coverity по статистическому анализу миллиард... (F.Y.)</title>
    <link>https://www.solaris.opennet.ru/openforum/vsluhforumID3/63892.html#17</link>
    <pubDate>Mon, 15 Feb 2010 23:50:17 GMT</pubDate>
    <description>X с -wall&apos;ом не собираются :) (Почти шутка)&lt;br&gt;</description>
</item>

<item>
    <title>Обобщение опыта Coverity по статистическому анализу миллиард... (lynx)</title>
    <link>https://www.solaris.opennet.ru/openforum/vsluhforumID3/63892.html#16</link>
    <pubDate>Mon, 15 Feb 2010 22:35:34 GMT</pubDate>
    <description>это же Pascal, там нет == ;P&lt;br&gt;</description>
</item>

<item>
    <title>Обобщение опыта Coverity по статистическому анализу миллиард... (pavlinux)</title>
    <link>https://www.solaris.opennet.ru/openforum/vsluhforumID3/63892.html#15</link>
    <pubDate>Mon, 15 Feb 2010 22:33:05 GMT</pubDate>
    <description>Скажите люди, кто-нибудь, когда-нибудь эту Coverity юзал.&lt;br&gt;&lt;br&gt;Я кроме их рекламных достижений ничего и не знаю. &lt;br&gt;</description>
</item>

<item>
    <title>C vs Pascal (pavlinux)</title>
    <link>https://www.solaris.opennet.ru/openforum/vsluhforumID3/63892.html#14</link>
    <pubDate>Mon, 15 Feb 2010 22:26:56 GMT</pubDate>
    <description>&amp;gt; ...  GetEUIDPtr = nil then begin end;&lt;br&gt;&lt;br&gt;&quot;=&quot; или &quot;==&quot; &lt;br&gt;&lt;br&gt;Ах да, в паскале присваивание это &quot;:=&quot;&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

</channel>
</rss>
