Our website uses cookies to enhance your browsing experience.
Accept
to the top
close form

Fill out the form in 2 simple steps below:

Your contact information:

Step 1
Congratulations! This is your promo code!

Desired license type:

Step 2
Team license
Enterprise license
** By clicking this button you agree to our Privacy Policy statement
close form
Request our prices
New License
License Renewal
--Select currency--
USD
EUR
* By clicking this button you agree to our Privacy Policy statement

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

close form
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

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

close form
check circle
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.

>
>
Sergey Vasiliev

Posts: Sergey Vasiliev

Sep 07 2021
PVS-Studio C#: what to do if project preparation takes too long or freezes?
Sergey Vasiliev
Some users of the PVS-Studio C# analyzer faced a problem: the project preparing stage either took much time or even froze. This article covers how the problem manifested itself and how we fixed...
...
Aug 11 2021
Optimization of .NET applications: a big result of small edits
Sergey Vasiliev
Today we're going to discuss how small optimizations in the right places of the application can improve its performance. Imagine: we remove the creation of an extra iterator in one place, get rid...
...
Subscribe to the newsletter
Want to receive a monthly digest of the most interesting articles and news? Subscribe!
* By clicking this button you agree to our Privacy Policy statement
Aug 06 2021
PVS-Studio for JetBrains CLion: ad astra per aspera
Evgeniy Ovsyannikov, Sergey Vasiliev
The PVS-Studio analyzer already has plugins for such IDEs from JetBrains as Rider, IntelliJ IDEA and Android Studio. Somehow we missed another IDE - CLion. The time has come to make amends! But...
...
Jul 21 2021
Enums in C#: hidden pitfalls
Sergey Vasiliev
C# has low barriers to entry and forgives a lot. Seriously, you may not understand how things work under the hood but still write code and remain easy-going about this. Though you still have to...
...
Jun 11 2021
Why you should check values of public methods' parameters
Nikita Lipilin, Sergey Vasiliev
This note will answer the question - why PVS-Studio considers parameters of public methods potential sources of tainted data. The analyzer can issue warnings if such parameters haven't been...
...
Jun 09 2021
Unity projects analysis: the solution file has two projects named "UnityEngine.UI"
Sergey Vasiliev
While PVS-Studio analyses a Unity project, one may stumble upon such an error: Error was encountered while trying to open solution file '...': The solution file has two projects...
...
Jun 03 2021
The ?. operator in foreach will not protect from NullReferenceException
Sergey Vasiliev
Do you like the ?. operator? Well, who doesn't? Many people like these concise null checks. However, today's article shows that the ?. operator may be tricky sometimes. That is, it can create...
...
Jun 01 2021
OWASP, vulnerabilities, and taint analysis in PVS-Studio for C#. Stir, but don't shake
Sergey Vasiliev
We continue to develop PVS-Studio as a SAST solution. Thus, one of our major goals is expanding OWASP coverage. You might ask, what's the use when there's no taint analysis? That's exactly what...
...
Feb 12 2021
Should we initialize an out parameter before a method returns?
Sergey Vasiliev
Surely every C# developer has used out-parameters. It seems that everything is extremely simple and clear with them. But is it really so? For a kickoff, let's start with a self-test...
...
Oct 30 2020
Check how you remember nullable value types. Let's peek under the hood
Sergey Vasiliev
Recently nullable reference types have become trendy. Meanwhile, the good old nullable value types are still here and actively used. How well do you remember the nuances of working with them...
...
View more Pagination arrow previous
Showing: - of 80