Έκδοση του cppcheck 2.7, ενός αναλυτή στατικού κώδικα για γλώσσες C++ και C

Κυκλοφόρησε μια νέα έκδοση του αναλυτή στατικού κώδικα cppcheck 2.7, η οποία σας επιτρέπει να αναγνωρίζετε διάφορες κατηγορίες σφαλμάτων στον κώδικα στις γλώσσες C και C++, συμπεριλαμβανομένης της χρήσης μη τυπικής σύνταξης, τυπικής για ενσωματωμένα συστήματα. Παρέχεται μια συλλογή προσθηκών μέσω των οποίων το cppcheck ενσωματώνεται με διάφορα συστήματα ανάπτυξης, συνεχούς ενοποίησης και δοκιμών, και παρέχει επίσης δυνατότητες όπως έλεγχος συμμόρφωσης κώδικα με το στυλ κώδικα. Για να αναλύσετε τον κώδικα, μπορείτε να χρησιμοποιήσετε είτε τον δικό σας αναλυτή είτε έναν εξωτερικό αναλυτή από το Clang. Περιλαμβάνει επίσης το σενάριο donate-cpu.py για την παροχή τοπικών πόρων για την εκτέλεση εργασιών συλλογικής αναθεώρησης κώδικα για πακέτα Debian. Ο πηγαίος κώδικας του έργου διανέμεται με την άδεια GPLv3.

Η ανάπτυξη του cppcheck επικεντρώνεται στον εντοπισμό προβλημάτων που σχετίζονται με απροσδιόριστη συμπεριφορά και τη χρήση σχεδίων που είναι επικίνδυνα από την άποψη της ασφάλειας. Ο στόχος είναι επίσης να ελαχιστοποιηθούν τα ψευδώς θετικά. Μεταξύ των προβλημάτων που εντοπίστηκαν: δείκτες σε ανύπαρκτα αντικείμενα, διαιρέσεις με το μηδέν, υπερχείλιση ακεραίων, εσφαλμένες λειτουργίες μετατόπισης bit, λανθασμένες μετατροπές, προβλήματα κατά την εργασία με μνήμη, εσφαλμένη χρήση STL, μηδενικές παραπομπές δείκτη, χρήση ελέγχων μετά την πραγματική πρόσβαση στο buffer, υπερβάσεις buffer, χρήση μη αρχικοποιημένων μεταβλητών.

Παράλληλα, η σουηδική εταιρεία Cppcheck Solutions AB αναπτύσσει μια εκτεταμένη έκδοση του Cppcheck Premium, η οποία παρέχει ανάλυση της παρουσίας άπειρων βρόχων, βελτιωμένη αναζήτηση για μη αρχικοποιημένες μεταβλητές και προηγμένη ανάλυση υπερχείλισης buffer.

Στη νέα έκδοση:

  • Προστέθηκε υποστήριξη για προβολές κοντέινερ - το χαρακτηριστικό view έχει προστεθεί στην ετικέτα βιβλιοθήκης, υποδεικνύοντας ότι η κλάση είναι μια προβολή. Ο κωδικός ανάλυσης διάρκειας ζωής έχει ενημερωθεί για να χρησιμοποιεί αυτό το χαρακτηριστικό κατά την αναζήτηση για κρεμαστά δοχεία.
  • Βελτιωμένοι έλεγχοι.
  • Τα συσσωρευμένα σφάλματα έχουν διορθωθεί και οι ελλείψεις στον αναλυτή έχουν εξαλειφθεί.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο