Skip to content

Releases: SonarOpenCommunity/sonar-cxx

V0.9.7

16 Feb 11:28

Choose a tag to compare

We are pleased to announce the SonarQube C++ Community Plugin version 0.9.7.
See lists below for features added and bugs fixed in this release.

SonarQube compability

Enhancements

  • SQ 5.6 API support: #926, #828, #988
    • use latest highlighting API: #918, #919
    • forceZeroCoverage: better detection of executable lines: #1014
    • improved CPD algorithm with additional configuration settings sonar.cxx.cpd.ignoreLiterals and sonar.cxx.cpd.ignoreIdentifiers: #941, #953
    • remove detailed mode from test metrics (no more supported with SQ 5.6 API: sonar.cxx.xunit.provideDetails): #906, #911
    • remove computation of package/file tangle metrics (no more supported with SQ 5.6 API): #364
  • Improved report handling: there is a tolerant and a strict mode now. In tolerant mode analysis continue in case of errors in a report file. In strict mode an error in a report file will stop the analysis (sonar.cxx.errorRecoveryEnabled): #842, #959, #758, #985, #972, #971
  • CppCheck 1.75, 1.76, 1.77 support: #913, #963, #966, #970, #1020, #1011
  • improve C99 designated initializers: #925, #961
  • support for Visual Studio 64-bit integer-suffix: #904
  • support for Visual Studio throw(...) exception specification: #892
  • improved preprocessor number decoding #967
  • support of VS2017 RC log file parsing #997
  • improved commented code check, supports also //@ and /*@: #992
  • remove indentation check: #873
  • PC-Lint: support of MISRA C++ 2008 and MISRA C++ Rule messages: #917
  • improved AppVeyor MAVEN path handling: #950
  • run integration tests with latest SQ versions: #1013, #1012, #1002, #998, #977, #964, #942, #935, #934, #959

Bugfixes

  • coverage issues with SQ6.2 #999
  • Regression in org.sonar.cxx.visitors.AbstractCxxPublicApiVisitor #980
  • typedef enum not supported by public API visitor #974
  • cpd visitor: IllegalArgumentException: 208 is not a valid line offset for pointer #952
  • C++11 preprocessor syntax not supported #951
  • error handling raw string literals #944
  • violationsCount is always "0" #939
  • Travis build failing #932
  • Problem with alias declarations inside template class #928
  • typedef union not supported by public API visitor #921
  • figure out what to do with forceZeroCoverage feature that does not work anymore in batch side #909
  • sonar-cxx 0.9.6 : compatibility issue with google collection ? #898
  • Issues with undocumented API detetction #890
  • API Documentation on template function #886
  • SwitchLastCaseIsDefault rule regression for fallthrough before default case #884
  • DuplicatedIncludeCheck not working in V0.9.6 #879
  • CycleBetweenPackagesCheck not working in V0.9.6 #878
  • MethodNameCheck: ctor and dtor of class should not be checked #800
  • Indentation within namespace blocks (again) #689
  • The token column will get wrong when include file has macro #1003
  • Extract this magic number 'nullptr' into a constant, variable declaration or an enum. #986
  • typename not always parsed #989
  • API documentation on template function in template class #1000
  • Coverage fails with wrong number of lines #842
  • workaround for 'forceZeroCoverage' #1007
  • MethodNameCheck: ctor and dtor of class should not be checked #984
  • improve public API handling #976
  • improve public API typedef handling #969
  • fix SwitchLastCaseIsDefault #968
  • improve preprocessor number decoding #967
  • improve C99 designated initializers #961
  • replacing text macros (C++11 syntax) #960
  • Alias declaration in function is not public API #949
  • Refactor/highlighting #945
  • increment violationsCount #940
  • TooManyStatementsPerLineCheck: remove redundant expression #938
  • Remove redundant expression #937
  • Fix ^= (BW_XOR_ASSIGN) #1026
  • support nested template definitions #1029
  • support nested names in CLI attributes #1037
  • add Cppcheck rules which seems to be not part of errlist #1045
  • improve syntax error warnings in LOG file #1047
  • fix Visual Studio coverage #1048
  • handle CxxUnitTestResultsImportSensor exceptions #1052, #1050
  • add XPath check again #1033

Know Issues

For an up to date list of known issues see the issue tracker.

  • V0.9.7 is not compatible with Java 9
  • Starting with SQ 6.2 there are some new metrics and some are no more available. Please have a look to the SonarQube release notes.

Thanks ....

go to all contributors (in alphabetical order):

@Bertk
@dkt01
@guwirth
@jmecosta
@wichtounet

... and all people which were active on the issue tracker!

V0.9.6

23 Jun 21:40

Choose a tag to compare

We are pleased to announce the release of the SonarQube C++ Community Plugin version 0.9.6.
See lists below for features added and bugs fixed in this release.

SonarQube compability

Enhancements

  • use latest SQ 5.6 API and POM 32 (#887, #883, #881, #868)
  • end of Java 7 support (#823)
  • remove deprecated SQALE quality model, sonar.cxx.other.sqales (#858, #856)
  • support of new SonarQube Quality Model (#816, #720)
  • sonar-scanner V2.6 support (#845)
  • support of Dr Memory Analysis reports; sonar.cxx.drmemory.reportPath (#837)
  • upgrade to sonar-dotnet-tests-library v1.3.2: supporting sonar.cxx.vstest.reportsPaths, sonar.cxx.nunit.reportsPaths and sonar.cxx.xunit.reportsPaths (#841)
  • cache coverage data to improve performance (#822)
  • improved logging (#838, #821, #846)

Bugfixes

  • fix Eclipse build (#863, #851)
  • improve preprocessor #elif and #include handling (#860)
  • preprocessor fails to parse #include directive which has functional macros (#855)
  • Microsoft specific handling of variadic macros not supported (#853, #843)
  • CxxCompilerSensor: Fix check for valid input handling (#826)

Know Issues

For an up to date list of known issues see the issue tracker.

  • V0.9.6 is not compatible with SQ 6.0, SQ 6.1, ...
  • V0.9.6 is not compatible with Java 9

Thanks ....

go to all contributors (in alphabetical order):

@arnaudsylvestre
@Bertk
@BobSilent
@guwirth
@jmecosta

... and all people which were active on the issue tracker!

V0.9.5

26 Mar 13:04

Choose a tag to compare

We are pleased to announce the release of the SonarQube C++ Community Plugin version 0.9.5.
See lists below for features added and bugs fixed in this release.

SonarQube compability

Enhancements

  • command line tool for standalone analysis cxxlint #791
  • allow custom checks in external plugins #667. #527
  • improved multi module support #695
  • improved report path handling: can be relative or absolute inside or outside rootDir now #683, #425
  • parser enhancements:
    • grammar refactoring: improved C++14 and C++17 support #743
    • support cudaKernel grammar #727
  • metrics enhancements:
    • undocumented public API detection: documentation for methods marked with "override" is optional now #810
    • add metric COMPLEXITY_IN_CLASSES and COMPLEXITY_IN_FUNCTIONS #788
  • checks enhancements:
    • FileHeaderCheck: with regex support #807
    • TooManyLinesOfCodeInFunctionCheck: improved LOC counting #807
    • new checks: LinesOfCodeInFunctionCheck and FunctionParameterCountCheck #790
    • add tags to all checks #783
  • rule enhancements:
    • rats: add missing rules strncat/sscanf #811
    • CppCheck 1.72 support #754
    • CppCheck 1.73 support #797
    • remove CompileIncludePathNotFoundOrInvalide rule #698
    • update VS and CppCheck rules, tags and URLs #726
  • unit test enhancements:
    • NUnit support:sonar.cxx.nunit.reportsPaths #742
    • MSTest support:sonar.cxx.vstest.reportsPaths #742
  • VC build log parser:
    • handle build log files from parallel builds #776
    • improve build log parser #744
    • suppport x64 in x86 machines #686, #685
  • integration tests:
  • other:
    • support environment variables and system properties in configuration files #716, #741
    • support comma separated list for reports in config file #730

Bugfixes

  • update urls in pom.xml, wiki and plugin (SonarOpenCommunity) #674
  • handle relative report paths with backticks outside basedir. #780
  • naming convention for functions should ignore name of class (#795)
  • Cannot find reports with relative Ant globbing (#775, #777)
  • NullPointerException looking for CppCheck report (#766)
  • Why didn't find the checks for naming convention in sonar-cxx-plugin-0.9.4.jar (#762)
  • Valgrind parsing error (#759, #799)
  • alias template can only be inline documented (#736)
  • SQ-5.2 background task: java.lang.IllegalArgumentException: Rule 'cxx:CycleBetweenPackages' (#734)
  • Parsing issues: template-parameter / std::enable_if<...>::type (#733)
  • expression parser errors (#728)
  • Fix integration tests for SQ 5.2/5.3+ (#721)
  • CxxVCppBuildLogParser does not detect absolute path (#711)
  • parser error during marco resolving (#705)
  • Travis build for Java 7 failing (#700)
  • Preprocessor #if code incorrect (#678, #692)
  • Failure to parse Botan header file Botan/build/include/botan/buf_comp.h (#673)
  • Update Center links are incorrect (#670)
  • variadic macros - no argument for ellipsis creates preprocessor parser (#605)
  • C++ grammar refactoring (#593, #743)
  • improve FunctionNameCheck and MethodNameCheck (#798)
  • fix href for Get-test-execution-metrics (#765)
  • activate naming checks (#763)
  • correct search order of dirs specified via 'sonar.cxx.includeDirectories' (#748)
  • try to fix broken Travis build for Java 7 (#746)
  • Add documentation node searching for template alias declaration (#739)
  • Reintroduce typeid keyword (#737)
  • fix rule CycleBetweenPackages Sqale remediation parameters (#735)
  • fix macro parameter replacement (#709, #708)
  • add sonar log file content to Travis log after failure (#702)
  • variadic macros: no argument for ellipsis creates preprocessor parser error (#701)
  • improved multi module support (#695)
  • remove final and override from keyword list (#675)

Know Issues

For an up to date list of known issues see the issue tracker

Thanks ....

go to all contributors (in alphabetical order):

@Bertk
@felipebz
@guwirth
@jmecosta
@lcintrat
@mjdetullio
@selltc
@wichtounet

... and all people which were active on the issue tracker!

v0.9.4

25 Oct 14:12

Choose a tag to compare

We are pleased to announce the release of the SonarQube C++ Community Plugin version 0.9.4.
See lists below for features added and bugs fixed in this release.

SonarQube compability

Enhancements

  • parser enhancements:
    • add C++/CLI support (#539)
    • complete C++11 and C++14 support (#507,#508, #556, #554, #560, #561, #562, #563, #564, #565, #566, #567, #568, #569, #570)
      • C++11: user defined literals (#564, #590)
      • C++11: raw string literale (#563, #580)
      • C++11: variadic template (#562, #589)
      • C++11: long long & trailing return type (#561)
      • C++11: attributes (#560)
      • C++14: standard user defined literals (#570)
      • C++14: lambda capture expressions (#569)
      • C++14: generic lambda (#568)
      • C++14: digit separators (#567)
      • C++14: binary literals (#566)
      • C++14: attribute deprecated with user defined message (#565, #571)
      • C++14: support lambda capture expressions (#574, #569, #568)
      • C++14: support binary literals (#572)
      • C++14: add digit separator support (#591)
      • add C++11/C++14 tests (#532)
  • metrics enhancements:
    • public API documentation metric: supports defaulted and deleted functions now (#558, #584)
  • rule enhancements:
    • CppCheck 1.70 support (#623, #627)
    • Visual Studio 2015 compiler warning support (#622, #626)
    • add tags to CXX rules (#636, #637)
    • NestedStatementsCheck: add new check for nesting level (#517)
    • additional checks for naming convention (#541)
      • FileNameCheck: file name check support (#456)
      • MethodNameCheck: method name check support (#455)
      • FunctionNameCheck: function name check support (#454)
      • ClassNameCheck: class name check support (#453)
    • ClassComplexityCheck: class complexity check support (#452, #541)
    • MagicNumberCheck : constexpr support (#606, #607)
    • TabCharacterCheck: add switch to report issues per line (#390, #553)
    • MagicNumberCheck: support unsigned values (#542)
    • FileRegularExpressionCheck/LineRegularExpression: add flags to negate search results (#534, #536)
  • coverage enhancements:
    • forceZeroCoverage: Depends on which key (sonar.cxx.coverage.reportPath, sonar.cxx.coverage.itReportPath, sonar.cxx.coverage.overallReportPath) is defined in the sonar-project.properties file now. (#633, #634)
  • integration tests:
    • added AppVeyour CI for Windows build (#651)
    • improved integration tests (#538, #658)
    • added SQ 5.2 to Travis build (#648, #649)
    • use Boost 1.55 for integration test (old was 1.46) (#555)
  • other:
    • improved VC++ build log parser (#501, #537)
    • support team builds now (#619)
    • update deprecated APIs and components (#647, #632, #629, #631, #642)
    • source code highlighting updated (#645, #644)
    • SQALE support for 'other' rules: sonar.cxx.other.sqales (#467, #529)
    • default values for reportPath values removed to get meaningful error messages (#331, #550)

Bugfixes

  • TooManyStatementsPerLineCheck creates false positive with type alias(#656, #659)
  • Execute decorators failing(#625, #631)
  • ERROR - path normalizing of... (#618)
  • PC-lint report may create SonarException in decorator (#600, #631)
  • parser error if identifier is also a token (CxxKeyword) (#586)
  • Type alias (using =) does not generate public API documentation violation (#577)
  • Public API documentaton violation generated for friend declaration (#576)
  • Non-type template parameters (#573)
  • ReservedNamesCheck exception #define _ ... (#543)
  • AST parser error - namespace alias '::TimerBase' (#526)
  • AST parser error 'auto Timer::writeTimeToLogFile() -> void {}' (#525)
  • AST parser error 'for (const std::string &i : v)' (#511)
  • AST parser does not support function trailing return type (#510)
  • preprocessor fails to extract filename from macro (#500)
  • Problem with Travis (#494)
  • Indentation Check with Namespace (#441)
  • Error with includes (#437)
  • Relative paths in Cobertura reports are treated relative to the current directory instead of the projectBaseDir (#426)
  • fix typos in pc-lint rules (#513)
  • Fix cpplint's NOLINT() with new rule names (#635)
  • Fix NOLINT(*) regression (#655)
  • fix normalizePathFull (#620)
  • Treat relative paths in Cobertura reports as relative to the project … (#613)
  • limit report line number (#611, #631)
  • stringinize with string prefix (#603)
  • Support C++/CLI typeid (#596, #582)
  • Handle expressions in non-type template parameters, fix (#573)
  • non-type template parameters fix (#592)
  • binary literals have no suffix (#588)
  • fix for trailing return types (#587)
  • Support for friend declaration API documentation (#583)
  • Generate public API documentation violation for alias declaration (#581)
  • Fixing with define _ (#544)
  • enhance handling of trailing return type (#528)
  • fix for range-based for loop (C++11) (#523)
  • fix up sqale (#521)
  • fix sqale definitions (#518)
  • Add fallback for 'reactor' report search in CxxCoverageSensor (#516)
  • fix typos in pc-lint rules (#513)
  • Improve namespace indentation check (#506)
  • Fix hashhash related parsing problem (#459)
  • sonar-cxx 0.9.3 doesn't show technical debt (issues) with sonar 4.5.x (#519)
  • permission denied on reports (#267, #550)

Know Issues

SonarQube 5.2 is only partially supported: next version will have full SQ 5.2 support.
For an up to date list of known issues see the issue tracker

Thanks ....

go to all contributors (in alphabetical order):

@ametselaar
@Bertk
@cbagwell
@guwirth
@jmecosta
@lcintrat
@Zetten

... and all people which were active on the Issue Tracker!

v0.9.3

22 Oct 16:42

Choose a tag to compare

We are pleased to announce the release of the SonarQube C++ Community Plugin version 0.9.3.
See lists below for features added and bugs fixed in this release.

SonarQube compability

Enhancements

  • SonarQube 4.5.2 API support (#357, #435, #395)
  • Multi-module support (#367, #358, #473, #278)
  • Visual Studio build log parser for automatic creation of configuration
    (macros and include directories) (#398, #399)
  • preprocessor enhancements:
    • Improved token rescanning during preprocessing (#442)
  • parser enhancements:
    • Improved C++11 support (#49)
    • Add header file to mock gcc specific extensions (#446)
  • rule enhancements:
    • PC-Lint: additional rules supported (#411)
    • Cppcheck: Support of V1.69 rules (#502, #503)
    • Cppcheck: Support 'inconclusive' issues (#247, #429)
    • New BooleanEqualityComparisonCheck (#392)
  • unit test enhancements:
    • Boost Unit Test: new XSLT supporting 'simple' and 'detailed' mode
      (sonar.cxx.xunit.provideDetails) (#428)
    • Support MSTest summary report files: add MS test results from trx file to SQ (#388)
  • coverage enhancements:
    • Coverage setting 'forceZeroCoverage' supports integration and overall coverage now (#434, #408)
  • other:
    • Improved integration tests: Boost Test, GoogleTest, Bullseye, multi-module, more SQ versions (#375, #352, #387, #462)
    • Improved report path location logging (#256, #433)

Bugfixes

  • [Parser Error ] "::" expected but ">>" [BW_RSHIFT] found bug solution available (#49)
  • Preprocessor failure evaluating BOOST_WORKAROUND bug solution available (#226)
  • Boost Unit Test, xunit.provideDetails=true, AST-based lookup bug solution available (#368)
  • Boost Unit Test, xunit.provideDetails=true, filename tag bug solution available (#372)
  • Some rarely used forms of the switch-statement cannot be parsed bug solution available (#381)
  • C++ Community / (2) Codananalysis / Add Value bug wontfix (#383)
  • CxxCoverageSensorTest.shouldReportCoverageWhenVisualStudioCase broken on windows bug (#393)
  • No error message if sonar.cxx.xunit.xsltURL file does not exist bug (#396)
  • xunit: nested (qualified) classname bug solution available (#401)
  • Private function definitions are counted as public API bug solution available (#402, #403)
  • The dependency analyzer extends projects scope by pulling the dependencies into it bug solution available (#405)
  • An argument called "final" generates a parsing error bug (#410)
  • Missing sensor rule stops analysis bug (#412)
  • NullPointerException when analyzing source file bug solution available (#418)
  • Analysis takes 15+ hours to complete bug (#424)
  • Relative paths in Cobertura reports are treated relative to the current directory instead of the projectBaseDir bug solution available (#426)
  • cxx:UseFileHeader How to use? bug solution available (#440)
  • False positive in "Statements should be on separate lines" bug solution available (#445)
  • Name of rule [repository=cxx, key=MissingInclude] is empty bug solution available (#460)
  • parser error with const reference to std::string bug waiting for answer (#477)
  • PC-Lint import stops with Exception bug solution available (#488)
  • CppCheck sensor shall support project findings bug solution available (#491)
  • Remove deprecated metric COMMENT_BLANK_LINES (#423, #395)

Know Issues

Thanks ....

go to all contributors (in alphabetical order):

@ametselaar
@Bertk
@guwirth
@jmecosta
@lcintrat
@Typz
@wenns

... and all people which were active on the Issue Tracker!

v0.9.2

14 Jan 20:34

Choose a tag to compare

We are pleased to announce the release of the SonarQube C++ Community Plugin version 0.9.2.
See lists below for features added and bugs fixed in this release.

SonarQube compability

Enhancements

  • preprocessor enhancements:
    • improve rescan and parameter extraction of cascaded macros (#302, #304)
    • support expressions in includes (#227, #312)
    • support named variadic arguments (#300, #301)
    • support uin64 values (#224, #308)
  • parser enhancements:
    • improve parsing speed (#299, #294, #260)
    • ignore C++ keywords in C files (sonar.cxx.cFilesPatterns) (#291, #345, #353)
    • support special meaning of token paste operator for GCC (#214, #298)
    • support Visual Studio inline assembler (#262, #333, #340)
    • support GCC case range extension (#235)
    • support ISO C99 compound literals (#237)
    • support ISO C99 designated initializers (#236)
  • metrics enhancements:
    • compute file and package dependencies (based on #include) ( #232, #292)
    • add metrics to count documented and undocumented APIs (#307, #318, #338)
    • add metric to count number of violations of each type (#177)
  • rule enhancements:
    • new rules to check for violations on cyclic package dependencies (#232, #292)
    • new rule to check for undocumented API (#307, #318, #338)
    • new rule FileRegularExpressionCheck: can be used to create rules which will be triggered when a file matches a given regular expression (#339, #179)
    • new rule LineRegularExpressionCheck: can be used to create rules which will be triggered when a line matches a given regular expression (#341, #179)
    • new rule FileEncodingCheck: check if all characters of a file can be encoded with the predefined charset (#223, #328)
    • new rule MissingIncludeFileCheck: generate a violation for missing include files (#52, #239)
    • new rule SwitchLastCaseIsDefaultCheck: test that a switch statement has 'default' label and that the 'default' is the final case (#320)
    • XPathCheck, FileRegularExpressionCheck , LineRegularExpressionCheck: new option allows Ant-style patterns to match a path (#335)
    • UselessParenthesesCheck: ignores generic code now (#231)
    • TooManyStatementsPerLineCheck: new option to allow case and break in one line (#230)
    • TooLongLineCheck: add a tab width setting to compute the length of the line more accurate (#233)
    • MagicNumberCheck: improve magic number detection - const variables are no more violations (#296, #332)
    • Unsupported Code Checker Custom Rules: make import of invalid XML rule files more stable (#254)
    • update Cppcheck messages for 1.67 release (#286, #264)
    • update PC-lint messages for 9.00l release candidate (#264)
  • coverage enhancements:
    • possibility to set coverage for source files without coverage report to zero to get more realistic Technical Debt values (sonar.cxx.coverage.forceZeroCoverage) (#218, #321)
    • Bullseye coverage reports: support coverage data on top level (src tag without folder tag) (#243, #250, #251)
    • Bullseye coverage reports: make path handling more robust (#273, #277)
  • add SQALE model definitions for the built-in checks (#199)

Bugfixes

  • Preprocessor does not support uint64 (#224)
  • No meaningful error message if force-included file cannot be found (#225)
  • Preprocessor does not support preprocessor expressions in includes (#227)
  • Bulleye coverage file is not parsed correctly (#243)
  • Server crash after updating 'External rules definition' with 0.9.1 (#253)
  • How can I find out whats going on (#260)
  • Unit test results not displayed in widget (#263)
  • Bullseye based coverage import reports 'cannot find the file ...' (#273)
  • Issues in digesting boost test results (#276)
  • Very slow performance of nested parenthesis (#294)
  • Const declarations are detected as magic numbers when not inside a function (#296)
  • Unable to parse named variadic arguments (#300)
  • Incomplete macro replacement rescanning (#302)
  • NPE in org.sonar.cxx.visitors.AbstractCxxPublicApiVisitor.visitMemberDeclarator (#327)
  • Cannot feed Valgrind report (#336)
  • The sslr-cxx-toolkit breaks when parsing some files (#374)
  • Wrong expansion of macros which dont contain whitespace after the parameter list (#380)

Thanks ....

go to all contributors (in alphabetical order):

@Bertk
@guwirth
@jmecosta
@lcintrat
@Typz
@Zetten

... and all people which were active on the Issue Tracker!

v0.9.1

17 Jun 11:30

Choose a tag to compare

We are pleased to announce the release of the SonarQube C++ Community Plugin version 0.9.1.
See lists below for features added and bugs fixed in this release.

Features / Enhancements:

  • Compatible and tested with SonarQube 3.7 to 4.2
  • Multi language support #130
  • Support case-insensitive file systems in all sensors #155
  • A set of builtin-checks like searching for ToDo, FixMe, NoSonar etc #96 #190 #167 #161 #157 #152 #151
  • Use SSLR V1.19.2 and sslr-squide-bridge V2.3 #91
  • Support of SonarQube 4.2 #180 #176 #181 #187 #198 #127
  • Parse error recovery #133
  • Force inclusion of a header file #85
  • Improved PC-Lint support #93
  • Additional SQALE definitions #105 #94 #62
  • Support of Visual Studio Code Coverage reports. #186
  • Attributted ATL support #174
  • Improve the code colorizer #172
  • Add support for Cppcheck 1.63 #166
  • Add support for Cppcheck 1.64 #165
  • Add support for Cppcheck's XML reports version 2 #158
  • Support GCC's statement expression. #144
  • Add support for feeding GCC's build warnings. #143
  • Support GCC's conditionals with omitted operands. #138
  • Support variadic macros. #137
  • Support for multi-module configurations #46

Bugfixes:

  • Do expand the macro arguments before expanding the macro body #194
  • Parse failure for c++11 for range loops #115
  • Prevent feeding of duplicated violations #110
  • PC-lint violations filename or line = "0" cannot be fed #81
  • Violations for files in project root folder cannot be fed #102
  • PC-lint improvements for messages without filename or line = "0" #81
  • Improper whitespace handling when hashhash'ing functionlike macro arguments #58

Thanks ....

go to all contributors:

@guwirth
@jmecosta
@Bertk
@Typz
@zjg

... and all people which were active on the Issue Tracker!

v0.9

15 Nov 11:40

Choose a tag to compare

Features / Enhancements:

  • Provide an AST using SSLR #59
  • Remap PC-lint MISRA violations into unique sonar rules #76
  • Improve association of sources to the test #75
  • Support for Intel Inspector via 'external rules'-mechanism #74
  • Add rules for CppCheck V1.58, V1.59 and V1.60 # 73
  • C++ Community Plugin not generating number of classes #70
  • Provide support for VC compiler warnings (C4001-C6535) #69
  • Replace cppncss with another tool (CCCC, CLOC) #67
  • Rule: C++ parsing error #61
  • Rule: custom/codebase specific checks via an XPath expression #60

Bugfixes:

  • C++ Community Plugin silently ignores unknown files in gcovr reports #72
  • Duplication detection doesnt work for source files which use line continuations #71
  • Analysis fails when additional tools sensor through exception (RATS, Vera++) #68
  • C++ Community Plugin mishandles file suffixes #66
  • Error when processing coverage reports containing a big number of hits #65
  • Crash with java.lang.IllegalArgumentException when analysing project #64
  • The report processing should be more stable / error tolerant #63