﻿# Showing abilities of PVS\-Studio analyzer by examples of Microsoft open\-source projects

Microsoft gradually started to open the code of some projects\. Our team is very happy about this\. We support the view that Microsoft Company has really high\-quality code\. What's more, Microsoft developers are already using static code analyzers\. That's why finding bugs in their code is a great way to demonstrate the abilities of the analyzer\.


> This article is out of date\\\. An updatable list of articles about the projects we have checked is \[here\]\(https://pvs\-studio\.com/en/blog/inspections/\)\\\.

![0398_Microsoft/image1.png](https://import.viva64.com/docx/blog/0398_Microsoft/image1.png)

## PVS\-Studio

Those, who already know, what PVS\-Studio is, may just skip this part\. 

PVS\-Studio is a tool for bug detection in the source code of programs, written in C, C\+\+ and C\#\. PVS\-Studio performs [static code analysis](https://pvs-studio.com/en/blog/terms/0046/) and generates a report that helps a programmer find and fix bugs\. PVS\-Studio performs a wide range of code checks, it is especially useful to search for misprints and Copy\-Paste errors\.

The demo\-version of the product is [available](https://pvs-studio.com/en/pvs-studio/download/) at our site\. It has a few of limitations that I have written about in the [article](https://pvs-studio.com/en/blog/posts/0395/)\. But there are ways to temporarily remove these restrictions\. 

## Abilities demonstration

I am quite sure that there is no point in writing nice marketing catchwords about PVS\-Studio\. They are of no interest to programmers\. I can easily relate to it, being a programmer myself\. As Linus Torvalds said: "Talk is cheap\. Show me the code\." In our case it should be paraphrased: "Talk is cheap\. Show me the bugs\."

We have various examples that speak for themselves\. Our team has checked a great number of open\-source projects and found 9574 bugs\. We find bugs in such projects as Clang, Wine, Qt, Chromium, Unreal Engine and so on\. You can have a look at the [error base](https://pvs-studio.com/en/blog/examples/) yourself and see how powerful PVS\-Studio is\. 

In this article I would like to set aside a special group of project checks that is related to Microsoft company\. I believe that the Microsoft development process is of high level and their code has low density of errors\.  However, even highly qualified specialists are not immune from making mistakes\. So I am really glad to show what PVS\-Studio is capable of\. 

Our articles are sometimes viewed as indirect comparison with [FxCop](https://en.wikipedia.org/wiki/fxcop) analyzer and the diagnostics built in Visual Studio\. Since PVS\-Studio finds bugs after the checks of these tools, it's worth embedding in your development process\. 

So, I suggest taking a look at the articles, showing the abilities of PVS\-Studio by the examples of projects written in C\+\+ and C\#\. 

### C\+\+

* [Analysis of CNTK tool kit from Microsoft Research](https://pvs-studio.com/en/blog/posts/cpp/0372/) 
* [ChakraCore: analysis of JavaScript\-engine for Microsoft Edge](https://pvs-studio.com/en/blog/posts/cpp/0370/)
* [Analysis of CoreCLR project](https://pvs-studio.com/en/blog/posts/cpp/0310/)
* [Windows 8 Driver Samples check\.](https://pvs-studio.com/en/blog/posts/cpp/0199/)
* Archeology for Entertainment\. [Microsoft Word 1\.1a check\.](https://pvs-studio.com/en/blog/posts/cpp/0245/)
* I have also found bugs in Visual C\+\+ libraries: [1](https://pvs-studio.com/en/blog/posts/cpp/0163/), [2](https://pvs-studio.com/en/blog/posts/cpp/0288/) 
* However, we are not always able to write an article about errors after checking Microsoft projects\. Microsoft is known for a reason for their responsible approach to creating software and qualitative code\. For example, in Casablanca project we found [nothing](https://pvs-studio.com/en/blog/posts/0189/)\.

### C\#

* [Analysis of \.NET Core Libraries \(CoreFX\)](https://pvs-studio.com/en/blog/posts/csharp/0365/)
* [Analysis of \.NET Compiler Platform \(Roslyn\)](https://pvs-studio.com/en/blog/posts/csharp/0363/) on the occasion of PVS\-Studio with C\# support release \.
* [Analysis of Microsoft Code Contracts](https://pvs-studio.com/en/blog/posts/csharp/0361/)

## Conclusion

I hope the articles I've provided would be of interest to you, prompting to try PVS\-Studio on your project\. This is the best way to see the benefits that the static code analysis brings\. There is also one thing to remember \- one\-time use of the analyzer isn't effective to fight bugs\. The analyzer should be used on a regular basis to detect bugs in the newly written code right away\. 

But enough talking\. [See the analyzer in action](https://pvs-studio.com/en/pvs-studio/download/)\.