SonarQube C/C++/Objective C 3.11 发布,这是 Sonar 平台用来检查 C/C++/Objective-C 代码的插件。
更新日志:
Bug
[CPP-552] - NOSONAR tag should work for preprocessing directives (such as #define)
[CPP-1388] - Fix false-positives in UnusedLocalVariableCheck (S1481)
[CPP-1389] - build-wrapper linux: fix handling of ccache and distcc, when compiler passed as an argument
[CPP-1408] - build-wrapper windows: environment variable "VS_UNICODE_OUTPUT" should not be defined when probing compiler
[CPP-1416] - Setting "sonar.cpp.std" to "gnu++03" and "sonar.c.std" to "gnu89" should not cause IllegalArgumentException
[CPP-1421] - Fix resolution of ambiguities according to CPP14 8.2p1 and 8.2p7
[CPP-1442] - Fix false-positives in S1235: take into account "final" and "override"
改进
[CPP-193] - Preprocessing lines of code should be part of the "lines of code" metric
[CPP-1321] - build-wrapper linux: take into account "argv[0]" for detection of compilers
[CPP-1327] - Compute metrics "lines of code" and "comment lines" for header files, when using build-wrapper
[CPP-1387] - Improve resolution of ambiguities in expressions
[CPP-1409] - Syntax highlighting for header files, when using build-wrapper
[CPP-1419] - Resolve ambiguity: new-type-id in a new-expression is the longest possible sequence of new-declarators
[CPP-1423] - Compute metric "lines" for header files, when using build-wrapper and 4.5 LTS <= SQ < 5.1
[CPP-1424] - Do not store zeros in "ncloc_data" and "comment_lines_data"
[CPP-1433] - Improve VirtualUsageCheck by using FunctionSymbols Helper
[CPP-1438] - Take into account attributes with leading and trailing underscores
[CPP-1443] - Fix location of issues
[CPP-1453] - Should be possible to do manual configuration on a module level
新特性
[CPP-209] - C Rule: Zero should not be a possible denominator
[CPP-883] - C Rule: Resources should be closed
[CPP-884] - C Rule: Dynamically allocated memory should be released
[CPP-1113] - Rule: Reversed operators should not be used
[CPP-1207] - C Rule: Memory locations should not be released more than once with "free(...)"
[CPP-1261] - Precise location for issues with SonarQube 5.2
[CPP-1303] - C++ Rule: Most vexing parse
[CPP-1311] - C++ Rule: "default" should be used for special member functions
[CPP-1390] - C++ Rule: redundant access specifier
[CPP-1391] - C++ Rule: redundant base class access specifier
[CPP-1393] - C++ Rule: declarations of functions defined outside of the class should not be marked as "inline"
[CPP-1394] - C++ Rule: Allocation and deallocation functions should not be explicitly declared "static"
[CPP-1395] - C++14 Rule: Digit separators should be used
[CPP-1398] - C++ Rule: Do not invoke virtual functions from constructors or destructors
[CPP-1403] - C++14 Rule: Only standard grouping should be used with digit separators
[CPP-1429] - C++11 Rule: Lambda return types should be implicit
[CPP-1452] - C Rule: Stack allocated memory is automatically released
Task
[CPP-1456] - Add missing tag "bug"
详情请查看更新说明