ΠΠ·Π»Π΅Π·Π΅ Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° ΡΡΠ°ΡΠΈΡΠ½ΠΈΡ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ Π½Π° ΠΊΠΎΠ΄ cppcheck 2.7, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠ»Π°ΡΠΎΠ²Π΅ Π³ΡΠ΅ΡΠΊΠΈ Π² ΠΊΠΎΠ΄ Π½Π° C ΠΈ C++, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ΅Π½ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ, ΡΠΈΠΏΠΈΡΠ΅Π½ Π·Π° Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ. ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΡΠ΅ ΠΊΠΎΠ»Π΅ΠΊΡΠΈΡ ΠΎΡ ΠΏΠ»ΡΠ³ΠΈΠ½ΠΈ, ΡΡΠ΅Π· ΠΊΠΎΠΈΡΠΎ Π΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΡΠ° Π½Π° cppcheck Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°, Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠ° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ ΠΈ ΡΠ΅ΡΡΠΈΡΠ°Π½Π΅, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠ΄Π° ΡΡΡ ΡΡΠΈΠ»ΠΎΠ²ΠΈΡΠ΅ Π½Π°ΡΠΎΠΊΠΈ. ΠΠ° Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° ΠΊΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ°ΠΊΡΠΎ ΡΠΎΠ±ΡΡΠ²Π΅Π½ ΠΏΠ°ΡΡΠ΅Ρ, ΡΠ°ΠΊΠ° ΠΈ Π²ΡΠ½ΡΠ΅Π½ ΠΏΠ°ΡΡΠ΅Ρ ΠΎΡ Clang. Π ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ° Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½ ΠΈ ΡΠΊΡΠΈΠΏΡ donate-cpu.py Π·Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° Π»ΠΎΠΊΠ°Π»Π½ΠΈ ΡΠ΅ΡΡΡΡΠΈ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΠΏΠΎ ΡΡΠ²ΠΌΠ΅ΡΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΠΊΠΎΠ΄Π° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ Debian. ΠΠ·Ρ ΠΎΠ΄Π½ΠΈΡΡ ΠΊΠΎΠ΄ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π° ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ GPLv3.
Π Π°Π·Π²ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° cppcheck Π΅ Π½Π°ΡΠΎΡΠ΅Π½ΠΎ ΠΊΡΠΌ ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ, ΠΎΠΏΠ°ΡΠ½ΠΈ ΠΎΡ Π³Π»Π΅Π΄Π½Π° ΡΠΎΡΠΊΠ° Π½Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡΠ°. Π¦Π΅Π»ΡΠ° Π΅ ΡΡΡΠΎ ΡΠ°ΠΊΠ° Π΄Π° ΡΠ΅ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠ°Ρ ΡΠ°Π»ΡΠΈΠ²ΠΈΡΠ΅ ΡΡΠ°Π±ΠΎΡΠ²Π°Π½ΠΈΡ. Π‘ΡΠ΅Π΄ ΠΎΡΠΊΡΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΡΠ°: ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ ΠΊΡΠΌ Π½Π΅ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°ΡΠΈ ΠΎΠ±Π΅ΠΊΡΠΈ, Π΄Π΅Π»Π΅Π½ΠΈΡ Π½Π° Π½ΡΠ»Π°, ΡΡΠ»ΠΎΡΡΠ½ΠΈ ΠΏΡΠ΅Π»ΠΈΠ²Π°Π½ΠΈΡ, Π½Π΅ΠΊΠΎΡΠ΅ΠΊΡΠ½ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ Π±ΠΈΡΠΎΠ²ΠΈ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°ΡΠ°, Π½Π΅ΠΊΠΎΡΠ΅ΠΊΡΠ½ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½ΠΈΡ, ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ ΠΏΠ°ΠΌΠ΅ΡΡΠ°, Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»Π½Π° ΡΠΏΠΎΡΡΠ΅Π±Π° Π½Π° STL, ΡΠ°Π·ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Π½ΡΠ»Π΅Π²ΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ, ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠ»Π΅Π΄ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΡΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΊΡΠΌ Π±ΡΡΠ΅ΡΠ°, ΠΈΠ·Π»ΠΈΠ·Π°Π½Π΅ ΠΈΠ·Π²ΡΠ½ Π³ΡΠ°Π½ΠΈΡΠΈΡΠ΅ Π½Π° Π±ΡΡΠ΅ΡΠΈΡΠ΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ.
ΠΠ°ΡΠ°Π»Π΅Π»Π½ΠΎ Ρ ΡΠΎΠ²Π° ΡΠ²Π΅Π΄ΡΠΊΠ°ΡΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Cppcheck Solutions AB ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π° ΡΠ°Π·ΡΠΈΡΠ΅Π½Π° Π²Π΅ΡΡΠΈΡ Cppcheck Premium, ΠΊΠΎΡΡΠΎ ΠΎΡΠΈΠ³ΡΡΡΠ²Π° Π°Π½Π°Π»ΠΈΠ· Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° Π±Π΅Π·ΠΊΡΠ°ΠΉΠ½ΠΈ ΡΠΈΠΊΠ»ΠΈ, ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ ΡΡΡΡΠ΅Π½Π΅ Π½Π° Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ ΠΈ ΡΠ°Π·ΡΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ· Π½Π° ΠΏΡΠ΅Π»ΠΈΠ²Π°Π½Π΅ Π½Π° Π±ΡΡΠ΅ΡΠΈ.
Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ:
- ΠΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ (view) Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ β Π² ΡΠ°Π³ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ Π°ΡΡΠΈΠ±ΡΡ view, ΡΠΊΠ°Π·Π²Π°Ρ, ΡΠ΅ ΠΊΠ»Π°ΡΡΡ Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅. ΠΠΎΠ΄ΡΡ Π·Π° Π°Π½Π°Π»ΠΈΠ· Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΆΠΈΠ²ΠΎΡ Π΅ ΠΎΠ±Π½ΠΎΠ²Π΅Π½, Π·Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠΎΠ·ΠΈ Π°ΡΡΠΈΠ±ΡΡ ΠΏΡΠΈ ΡΡΡΡΠ΅Π½Π΅ Π½Π° βΠ²ΠΈΡΡΡΠΈβ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ;
- ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ;
- ΠΠΎΡΠΈΠ³ΠΈΡΠ°Π½ΠΈ Π½Π°ΡΡΡΠΏΠ°Π½ΠΈ Π³ΡΠ΅ΡΠΊΠΈ ΠΈ ΠΎΡΡΡΡΠ°Π½Π΅Π½ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΡΠΈ Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠ°.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
