ΠŸΡƒΡΠΊΠ°Π½Π΅ Π½Π° cppcheck 2.7, Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ Π½Π° статичСн ΠΊΠΎΠ΄ Π·Π° C++ ΠΈ C Π΅Π·ΠΈΡ†ΠΈ

ИзлСзС Π½ΠΎΠ²Π° вСрсия Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Π° Π½Π° статичСн ΠΊΠΎΠ΄ cppcheck 2.7, която Π²ΠΈ позволява Π΄Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Ρ‚Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ класовС Π³Ρ€Π΅ΡˆΠΊΠΈ Π² ΠΊΠΎΠ΄Π° Π½Π° Π΅Π·ΠΈΡ†ΠΈΡ‚Π΅ C ΠΈ C++, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΡ€ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° нСстандартСн синтаксис, Ρ‚ΠΈΠΏΠΈΡ‡Π΅Π½ Π·Π° Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ систСми. ΠžΡΠΈΠ³ΡƒΡ€Π΅Π½Π° Π΅ колСкция ΠΎΡ‚ плъгини, Ρ‡Ρ€Π΅Π· ΠΊΠΎΠΈΡ‚ΠΎ cppcheck сС ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π° с Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ систСми Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, Π½Π΅ΠΏΡ€Π΅ΠΊΡŠΡΠ½Π°Ρ‚Π° интСграция ΠΈ тСстванС ΠΈ ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° прСдоставя Ρ‚Π°ΠΊΠΈΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΊΠΎΠ΄Π° със стила Π½Π° ΠΊΠΎΠ΄Π°. Π—Π° Π΄Π° Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅ ΠΊΠΎΠ΄, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΈΠ»ΠΈ свой собствСн Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€, ΠΈΠ»ΠΈ външСн Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ ΠΎΡ‚ Clang. Π’ΠΎΠΉ ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π²ΠΊΠ»ΡŽΡ‡Π²Π° скрипта donate-cpu.py Π·Π° прСдоставянС Π½Π° Π»ΠΎΠΊΠ°Π»Π½ΠΈ рСсурси Π·Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° ΡΡŠΠ²ΠΌΠ΅ΡΡ‚Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ ΠΏΡ€Π΅Π³Π»Π΅Π΄ Π½Π° ΠΊΠΎΠ΄ Π·Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ Π½Π° Debian. Π˜Π·Ρ…ΠΎΠ΄Π½ΠΈΡΡ‚ ΠΊΠΎΠ΄ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° сС разпространява ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π· GPLv3.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° cppcheck Π΅ фокусирано Π²ΡŠΡ€Ρ…Ρƒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с Π½Π΅Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ са опасни ΠΎΡ‚ Π³Π»Π΅Π΄Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ° Π½Π° бСзопасността. Π¦Π΅Π»Ρ‚Π° Π΅ ΡΡŠΡ‰ΠΎ Π΄Π° сС свСдат Π΄ΠΎ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Ρ„Π°Π»ΡˆΠΈΠ²ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»Π½ΠΈ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ. Π‘Ρ€Π΅Π΄ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ: ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ към Π½Π΅ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈ ΠΎΠ±Π΅ΠΊΡ‚ΠΈ, дСлСния Π½Π° Π½ΡƒΠ»Π°, цСлочислСни ΠΏΡ€Π΅ΠΏΡŠΠ»Π²Π°Π½ΠΈΡ, Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π·Π° измСстванС Π½Π° Π±ΠΈΡ‚ΠΎΠ²Π΅, Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΈ прСобразувания, ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΠ°ΠΌΠ΅Ρ‚, Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° STL, Π΄Π΅Ρ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ Π½Π° Π½ΡƒΠ»Π΅Π² ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π», ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ слСд дСйствитСлния Π΄ΠΎΡΡ‚ΡŠΠΏ към Π±ΡƒΡ„Π΅Ρ€Π°, ΠΏΡ€Π΅ΠΏΡŠΠ»Π²Π°Π½Π΅ Π½Π° Π±ΡƒΡ„Π΅Ρ€Π°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π½Π΅ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ.

УспорСдно с Ρ‚ΠΎΠ²Π° ΡˆΠ²Π΅Π΄ΡΠΊΠ°Ρ‚Π° компания Cppcheck Solutions AB Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π° Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½Π° вСрсия Π½Π° Cppcheck Premium, която прСдоставя Π°Π½Π°Π»ΠΈΠ· Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π±Π΅Π·ΠΊΡ€Π°ΠΉΠ½ΠΈ Ρ†ΠΈΠΊΠ»ΠΈ, ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΎ Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅ Π½Π° Π½Π΅ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ ΠΈ Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ Π°Π½Π°Π»ΠΈΠ· Π½Π° ΠΏΡ€Π΅ΠΏΡŠΠ»Π²Π°Π½Π΅ Π½Π° Π±ΡƒΡ„Π΅Ρ€Π°.

Π’ Π½ΠΎΠ²Π°Ρ‚Π° вСрсия:

  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΈΠ·Π³Π»Π΅Π΄ΠΈ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ - Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΡŠΡ‚ Π·Π° ΠΈΠ·Π³Π»Π΅Π΄ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ към Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚Π° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π°, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π°, Ρ‡Π΅ ΠΊΠ»Π°ΡΡŠΡ‚ Π΅ ΠΈΠ·Π³Π»Π΅Π΄. ΠšΠΎΠ΄ΡŠΡ‚ Π·Π° Π°Π½Π°Π»ΠΈΠ· Π½Π° цСлия ΠΆΠΈΠ²ΠΎΡ‚ Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½, Π·Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Ρ‚ΠΎΠ·ΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΏΡ€ΠΈ Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅ Π½Π° висящи ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ;
  • ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ;
  • ΠšΠΎΡ€ΠΈΠ³ΠΈΡ€Π°Π½ΠΈ са Π½Π°Ρ‚Ρ€ΡƒΠΏΠ°Π½ΠΈ Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΈ са отстранСни Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ†ΠΈ Π² Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Π°.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€