What's new in Klocwork 2018Here are the highlights for Klocwork 2018. If you're upgrading, also see the Limitations for items that affect how you use Klocwork. Features in the latest release of Klocwork 2018In the latest release of Klocwork 2018, we’re happy to announce the release of a new Klocwork checker, SPECTRE.VARIANT1, that detects potential occurrences of Spectre variant 1 (CVE-2017-5753) in your code. For a detailed explanation about the checker and how it works, see our video. We've also improved support for Chromium-based browsers. New analysis engine with support for latest C++ 17 language featuresOur new analysis engine provides improved support for C++ 11, 14, and 17 language features. Improved support means you can be confident that Klocwork 2018 is performing the most complete analysis on the most complex C++ applications. For more information, see Supported C++ language specifications. Cross-version support for buildsKlocwork 2018 has decoupled the Build Server version from the Portal and Desktop tools, up to three minor releases back. This means you can load Klocwork 2017.1, 2017.2, and 2017.3 builds into Klocwork 2018 without having to import or migrate data. For large organizations, this feature provides flexibility by allowing you to upgrade the Portal and Desktop tools to take advantage of improvements, while still analyzing some or all of your projects with a previous version of Klocwork. For more information, see Cross-version support for builds. Licensing2017 licenses are not compatible with Klocwork 2018. You need a new license to use the latest version of the product. Contact license@roguewave.com to obtain a new license. In release 2017.3, we upgraded the version of FlexNet Publisher that we support for Windows, Linux, and Mac platforms to version 2016 R2 (11.14.1.2). The versions of FlexNet Publisher used with AIX and Sun Solaris are unchanged. If you are using your own FlexNet Publisher license server, the Windows, Linux and Mac installations of Klocwork 2018.1 are compatible with FlexNet Publisher 2016 R2 (11.14.1.2) and later. The versions of FlexNet Publisher used by Solaris and AIX are not compatible; therefore, for example, a Klocwork integration build analysis on a Windows machine will not be able to check out a license from a license server running on Solaris or AIX. For more information, see Supported versions of Flex Net Publisher. Improvements to supported compilersWe've improved support for the following compilers:
For the full list of supported C/C++ compilers, see C/C++ compilers supported for build integration. Changes to the Path APIIn Klocwork 2016, we made a number of changes to the C++ version of our Path API. Chapter 2 of the Klocwork C/C++ Path Analysis API Reference contains a list of deprecated functions and provides a proposed replacement for each. As of Klocwork 2017.1, the use of deprecated functions causes compiler errors instead of compiler warnings. If you're using deprecated functions, we recommend you migrate to supported functions now. For more information, see Important changes to the Path API in version 11.2. Checker improvementsFrom release to release, we improve issue detection to bring state-of-the-art capabilities to our customers. As a result, expect your analysis results to change as accuracy and coverage improve. Enabled or disabled checkers No changes were made to the default enabled field of the checker configuration files for this release. Taxonomy improvementsAs part of our installation, we offer several custom taxonomy files that map our checkers to standards such as MISRA, CWE, OWASP and DISA STIG. The following is the list of changes to these files in this release:
Note: If you've imported a custom taxonomy (for example, MISRA) in a previous release, you need to import the new taxonomy file to pick up these changes.
Changes to system requirementsThis section lists changes to the System Requirements. We've added support for the following:
We've removed support for the following:
Changes to commands and optionsWe modified the kwbuildproject command by removing the --log-file and --resume options. We modified the kwbuildproject command by adding the --classic option. The --classic option forces Klocwork to use the previous generation (pre-Klocwork 2018) analysis engine. The previous analysis engine only provides partial support for C++11 and C++14. For more information about Klocwork commands, see Command Reference. |