To get a trial key
fill out the form below
Team License (a basic version)
Enterprise License (an extended version)
* By clicking this button you agree to our Privacy Policy statement

Request our prices
New License
License Renewal
--Select currency--
USD
EUR
RUB
* By clicking this button you agree to our Privacy Policy statement

Free PVS-Studio license for Microsoft MVP specialists
* By clicking this button you agree to our Privacy Policy statement

To get the licence for your open-source project, please fill out this form
* By clicking this button you agree to our Privacy Policy statement

I am interested to try it on the platforms:
* By clicking this button you agree to our Privacy Policy statement

Message submitted.

Your message has been sent. We will email you at


If you haven't received our response, please do the following:
check your Spam/Junk folder and click the "Not Spam" button for our message.
This way, you won't miss messages from our team in the future.

>
>
PVS-Studio 7.19: what's new?

PVS-Studio 7.19: what's new?

Jun 24 2022

Recently, we have released a new PVS-Studio version — 7.19. In this note, we'll tell you about new features in the analyzer, the enhanced documentation, as well as what to read and... what to play.

0958_Release_7_19/image1-d83377c0bb97c038f744bf28d7ca8a35.png

Enhancements

PVS-Studio supports Unreal Engine 5

Now, you can use PVS-Studio to analyze projects on Unreal Engine 5. For the most part, projects on UE 5 are analyzed in the same way as projects on UE 4. The difference is described in the documentation.

Unreal Engine 5 bug: Unable to find PVS-Studio

Unreal Engine 5 has a bug that doesn't let Unreal Build Tool find PVS-Studio by the default installation path. A pull request is made to fix this issue. The fix will be included in one of the next versions of the engine.

As of now, there's a temporary workaround. You can read about it in the documentation.

The C++ analyzer now works better with QNX compilers

We have enhanced the work of the C++ analyzer with the QNX compilers:

  • the analyzer better recognizes the target platform of the QNX Momentics QCC compilers. Thanks to this, we reduced the number of false positives issued on code under QNX;
  • we supported the latest versions of the QNX compiler.

The PVS-Studio plugin for SonarQube

The PVS-Studio plugin for SonarQube now supports JSON reports. Since PVS-Studio reports in the JSON format are available for all platforms, this simplifies cross-platform work scenarios.

Developer notification utility (blame-notifier)

The blame-notifier utility is used to notify developers and managers about code errors found by the analyzer. The notifications are sent via emails containing analyzer warnings.

Now you can attach files to such emails (for example, the full analyzer report) and change the subject of the email.

You can find the documentation for the blame-notifier utility here.

Documentation

Analyzer reports and conversion utilities

You can convert PVS-Studio analysis results to various formats using special utilities (PlogConverter.exe, plog-converter). To browse various formats, you can read the document which describes:

  • formats into which reports can be converted, and the purpose of these formats;
  • report conversion utilities and startup flags;
  • examples of conversion commands.

You can find the information here.

Unreal Engine

We have updated the documentation on using Unreal Engine and PVS-Studio. It describes:

  • how to check projects from the IDE and from the command line;
  • how to embed the analyzer in a project and not to see warnings on legacy code;
  • how to exclude files and directories from analysis;
  • features of using the analyzer with different engine versions.

The documentation is available here.

New diagnostics

C, C++

  • V834. Incorrect type of a loop variable. This leads to the variable binding to a temporary object instead of a range element.
  • V835. Passing cheap-to-copy argument by reference may lead to decreased performance.
  • V1083. Signed integer overflow in arithmetic expression. This leads to undefined behavior.
  • V1084. The expression is always true/false. The value is out of range of enum values.
  • V1085. Negative value is implicitly converted to unsigned integer type in arithmetic expression.

C#

  • V3175. Locking operations must be performed on the same thread. Using 'await' in a critical section may lead to a lock being released on a different thread.
  • V3176. The '&'= or '|=' operator is redundant because the right operand is always true/false.
  • V5622. OWASP. Possible XPath injection. Potentially tainted data is used in the XPath expression.
  • V5623. OWASP. Possible open redirect vulnerability. Potentially tainted data is used in the URL.

What to read and what to... play

What to read

PVS-Studio enhancements

We not only improve the analyzer, but also tell you what we are doing, how and why. You can read about it in the following articles:

Project checks

We continue to check the quality of the Open Source projects code. What errors did we find there? Read in these articles:

What to play

We've made a quiz where you can test your skills and find errors in code fragments. So far, the quiz has only the C++ version. Do you want this quiz to be for C# too? Leave a comment. :)

You can play this game here.

Try PVS-Studio 7.19

You can download the latest version of PVS-Studio here. Don't have a license? Request a trial key!

Popular related articles
PVS-Studio 7.18: updates and enhancements

Date: Apr 13 2022

Author: Sergey Vasiliev

Meet the latest PVS-Studio release — 7.18. This article will tell you about how we improved the analysis of modern C++, the search of security defects from the OWASP Top 10 list, and a new feature fo…
PVS-Studio 7.17: Unreal Engine, ASP.NET Core, Texas Instruments

Date: Feb 14 2022

Author: Sergey Vasiliev

We are pleased to announce the first release of PVS-Studio in 2022. In this article, we discuss various enhancements in managing Unreal Engine and ASP.NET Core projects. Keep reading to learn about n…
PVS-Studio 7.16, expanding the horizons: MISRA C, Visual Studio 2022, .NET 6

Date: Dec 10 2021

Author: Andrey Karpov

This is the latest release of PVS-Studio in 2021. With it, the PVS-Studio team accomplishes several important goals. Now, PVS-Studio supports Visual Studio 2022, the .NET 6 platform and C# 10.0. We i…
PVS-Studio 7.15: MISRA, CWE, OWASP, Unreal Engine

Date: Oct 11 2021

Author: Andrey Karpov

We are actively developing the PVS-Studio static analysis tool towards detecting Safety and Security-related errors. To be more precise, we've expanded the coverage of the MISRA C:2012 and OWASP ASVS…
PVS-Studio 7.14: intermodular analysis in C++ and plugin for JetBrains CLion

Date: Aug 16 2021

Author: Andrey Karpov

The PVS-Studio team is increasing the number of diagnostics with each new release. Besides, we are improving the analyzer's infrastructure. This time we added the plugin for JetBrains CLion. Moreover…

Comments (0)

Next comments
This website uses cookies and other technology to provide you a more personalized experience. By continuing the view of our web-pages you accept the terms of using these files. If you don't want your personal data to be processed, please, leave this site.
Learn More →
Accept