SonarSource is pleased to announce the release of the C/C++/Objective-C plugin version 3.9.
This new version embeds 11 new rules and all rules are now able to trigger some issues directly on header files. Moreover, the default “Sonar Way” quality profile has been tuned to make it suitable out-of-the-box for most C/C++/Objective-C projects.
Those 11 new rules are :
- “::” operator should be used to access global variables and functions (C++, pitfall)
- “static” base class members should not be accessed via derived types (C++, confusing)
- Accessible base classes should not be both “virtual” and non-virtual in the same hierarchy (C++, misra)
- Child class fields should not shadow parent class fields (C++, confusing)
- Destructors should not be called explicitly (C++, suspicious)
- Inheritance should be “public” (C++, api-design)
- Standard namespaces should not be modified (C++, bug, cert)
- Redundant pointer operator sequences should be removed (C, Objective-C, bug)
- Inheritance tree of classes should not be too deep (C++, Objective-C, design)
- C declarations should not be made inside Objective-C structures (Objective-C, pitfall)
- Keywords should be used before arguments (Objective-C, api-design)
Please read the release notes for more information. You can install or update it via the Update Center.