ΠžΠ±Ρ˜Π°Π²ΡƒΠ²Π°ΡšΠ΅ Π½Π° cppcheck 2.7, Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ Π½Π° статички ΠΊΠΎΠ΄ Π·Π° C++ ΠΈ C Ρ˜Π°Π·ΠΈΡ†ΠΈ

ОбјавСна Π΅ Π½ΠΎΠ²Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π° Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΡ‚ Π½Π° статички ΠΊΠΎΠ΄ cppcheck 2.7, која Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΡƒΠ²Π°Ρ‚Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ класи Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ Π²ΠΎ ΠΊΠΎΠ΄ΠΎΡ‚ Π½Π° Ρ˜Π°Π·ΠΈΡ†ΠΈΡ‚Π΅ C ΠΈ C++, Π²ΠΊΠ»ΡƒΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΈ ΠΊΠΎΠ³Π° користитС нСстандардна синтакса, Ρ‚ΠΈΠΏΠΈΡ‡Π½Π° Π·Π° Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ систСми. ОбСзбСдСна Π΅ ΠΊΠΎΠ»Π΅ΠΊΡ†ΠΈΡ˜Π° Π½Π° ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΡ†ΠΈ ΠΏΡ€Π΅ΠΊΡƒ ΠΊΠΎΠΈ cppcheck Π΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π°Π½Π° со Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ систСми Π·Π° Ρ€Π°Π·Π²ΠΎΡ˜, ΠΊΠΎΠ½Ρ‚ΠΈΠ½ΡƒΠΈΡ€Π°Π½Π° ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ˜Π° ΠΈ Ρ‚Π΅ΡΡ‚ΠΈΡ€Π°ΡšΠ΅, Π° исто Ρ‚Π°ΠΊΠ° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π° Ρ‚Π°ΠΊΠ²ΠΈ карактСристики ΠΊΠ°ΠΊΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° усогласСноста Π½Π° ΠΊΠΎΠ΄ΠΎΡ‚ со стилот Π½Π° ΠΊΠΎΠ΄ΠΎΡ‚. Π—Π° Π΄Π° Π³ΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅ ΠΊΠΎΠ΄ΠΎΡ‚, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° користитС ΠΈΠ»ΠΈ сопствСн парсСр ΠΈΠ»ΠΈ Π½Π°Π΄Π²ΠΎΡ€Π΅ΡˆΠ΅Π½ парсСр ΠΎΠ΄ Clang. Π˜ΡΡ‚ΠΎ Ρ‚Π°ΠΊΠ°, ја Π²ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π° скриптата donate-cpu.py Π·Π° Π΄Π° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈ Π»ΠΎΠΊΠ°Π»Π½ΠΈ рСсурси Π·Π° Π΄Π° сС ΠΈΠ·Π²Ρ€ΡˆΠΈ соработка Π·Π° ΠΏΡ€Π΅Π³Π»Π΅Π΄ΡƒΠ²Π°ΡšΠ΅ Π½Π° ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Π·Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ‚Π΅ Π½Π° Debian. Π˜Π·Π²ΠΎΡ€Π½ΠΈΠΎΡ‚ ΠΊΠΎΠ΄ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ Π΅ дистрибуиран ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Ρ†Π°Ρ‚Π° GPLv3.

Π Π°Π·Π²ΠΎΡ˜ΠΎΡ‚ Π½Π° cppcheck Π΅ фокусиран Π½Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΡƒΠ²Π°ΡšΠ΅ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ ΠΏΠΎΠ²Ρ€Π·Π°Π½ΠΈ со Π½Π΅Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ΠΎ ΠΎΠ΄Π½Π΅ΡΡƒΠ²Π°ΡšΠ΅ ΠΈ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π½Π° дизајни ΠΊΠΎΠΈ сС опасни ΠΎΠ΄ бСзбСдносна Π³Π»Π΅Π΄Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ°. Π¦Π΅Π»Ρ‚Π° Π΅ исто Ρ‚Π°ΠΊΠ° Π΄Π° сС ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π°Ρ‚ Π»Π°ΠΆΠ½ΠΈΡ‚Π΅ ΠΏΠΎΠ·ΠΈΡ‚ΠΈΠ²ΠΈ. ΠœΠ΅Ρ“Ρƒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΡƒΠ²Π°Π½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ: ΠΏΠΎΠΊΠ°ΠΆΡƒΠ²Π°Ρ‡ΠΈ Π½Π° нСпостоСчки ΠΎΠ±Ρ˜Π΅ΠΊΡ‚ΠΈ, ΠΏΠΎΠ΄Π΅Π»Π±ΠΈ со Π½ΡƒΠ»Π°, ΠΏΡ€Π΅Π»Π΅Π²Π°ΡšΠ΅ Π½Π° Ρ†Π΅Π»ΠΈ Π±Ρ€ΠΎΠ΅Π²ΠΈ, Π½Π΅Ρ‚ΠΎΡ‡Π½ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π·Π° ΠΏΠΎΠΌΠ΅ΡΡ‚ΡƒΠ²Π°ΡšΠ΅ Π½Π° Π±ΠΈΡ‚ΠΎΠ²ΠΈ, Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΈ ΠΊΠΎΠ½Π²Π΅Ρ€Π·ΠΈΠΈ, ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° со ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°, Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»Π½Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π½Π° STL, Π΄Π΅Ρ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ Π½Π° Π½ΡƒΠ»Π° ΠΏΠΎΠΊΠ°ΠΆΡƒΠ²Π°Ρ‡, ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠΎ вистинскиот пристап. Π΄ΠΎ Π±Π°Ρ„Π΅Ρ€ΠΎΡ‚, ΠΏΡ€Π΅Ρ‡Π΅ΠΊΠΎΡ€ΡƒΠ²Π°ΡšΠ° Π½Π° Π±Π°Ρ„Π΅Ρ€ΠΎΡ‚, ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π½Π° Π½Π΅ΠΈΠ½ΠΈΡ†ΠΈΡ˜Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ.

ΠŸΠ°Ρ€Π°Π»Π΅Π»Π½ΠΎ, ΡˆΠ²Π΅Π΄ΡΠΊΠ°Ρ‚Π° компанија Cppcheck Solutions AB Ρ€Π°Π·Π²ΠΈΠ²Π° ΠΏΡ€ΠΎΡˆΠΈΡ€Π΅Π½Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π° Π½Π° Cppcheck Premium, која ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π° Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° присуството Π½Π° бСсконСчни јамки, ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΎ ΠΏΡ€Π΅Π±Π°Ρ€ΡƒΠ²Π°ΡšΠ΅ Π·Π° Π½Π΅ΠΈΠ½ΠΈΡ†ΠΈΡ˜Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ ΠΈ Π½Π°ΠΏΡ€Π΅Π΄Π½Π° Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° ΠΏΡ€Π΅Π»Π΅Π²Π°ΡšΠ΅ Π½Π° Π±Π°Ρ„Π΅Ρ€ΠΎΡ‚.

Π’ΠΎ Π½ΠΎΠ²Π°Ρ‚Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π°:

  • Π”ΠΎΠ΄Π°Π΄Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° ΠΏΡ€Π΅Π³Π»Π΅Π΄ΠΈ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ - Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΡ‚ view Π΅ Π΄ΠΎΠ΄Π°Π΄Π΅Π½ Π½Π° ΠΎΠ·Π½Π°ΠΊΠ°Ρ‚Π° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π°, ΡˆΡ‚ΠΎ ΠΏΠΎΠΊΠ°ΠΆΡƒΠ²Π° Π΄Π΅ΠΊΠ° класата Π΅ ΠΏΡ€ΠΈΠΊΠ°Π·. ΠšΠΎΠ΄ΠΎΡ‚ Π·Π° Π΄ΠΎΠΆΠΈΠ²ΠΎΡ‚Π½Π° Π°Π½Π°Π»ΠΈΠ·Π° Π΅ Π°ΠΆΡƒΡ€ΠΈΡ€Π°Π½ Π·Π° Π΄Π° Π³ΠΎ користи овој Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΏΡ€ΠΈ ΠΏΡ€Π΅Π±Π°Ρ€ΡƒΠ²Π°ΡšΠ΅ Π½Π° висСчки ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ;
  • ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ;
  • ΠŸΠΎΠΏΡ€Π°Π²Π΅Π½ΠΈ сС Π°ΠΊΡƒΠΌΡƒΠ»ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΈ отстранСти сС нСдостатоцитС Π²ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΡ‚.

Π˜Π·Π²ΠΎΡ€: opennet.ru

Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€