How to become an author
  • All streams
  • Development
  • Administrating
  • Design
  • Management
  • Marketing
  • PopSci
Log in Sign up
206.41
Rating
PVS-Studio

Static Code Analysis for C, C++, C# and Java

Profile

Blog 171

News

Vacancies

Subscribers 17.5k

Employees 26

  • All posts 171
  • Top
  • Ilya_Gainulin April 6, 2021 at 03:56 PM

    Pitfalls in String Pool, or Another Reason to Think Twice Before Interning Instances of String Class in C#

    • PVS-Studio corporate blog,
    • Programming,
    • .NET,
    • C#

      As software developers, we always want our software to work properly. We'll do everything to improve the software quality. To find the best solution, we are ready to use parallelizing or applying any various optimization techniques. One of these optimization techniques is the so-called string interning. It allows users to reduce memory usage. It also makes string comparison faster. However, everything is good in moderation. Interning at every turn is not worth it. Further, I'll show you how not to slip up with creating a hidden bottleneck in the form of the String.Intern method for your application.

      Read more
      • +1
      • 401
      • Comment
    • n0mo March 31, 2021 at 02:35 PM

      PVS-Studio Team's Kanban Board. Part 1: Agile

      • PVS-Studio corporate blog,
      • Agile

        This article could have been born about a year ago – that's when the PVS-Studio team decided to try agile. However, we wanted to experience it hands-on before we told the world about it. Aside from introducing agile, we decided to switch from Bitbucket to a new task tracker. We also wanted to upgrade many of our internal development processes. No time for an article!

        Read more
        • +1
        • 377
        • Comment
      • vkhanieva March 29, 2021 at 11:41 AM

        MacOS Kernel, How Good Is This Apple?

        • PVS-Studio corporate blog,
        • Open source,
        • C++,
        • Development for MacOS

          0818_XNU_MacOS_Kernel/image1.png


          At the very beginning of this year, Apple released the source code for macOS – Big Sur. It includes XNU, the kernel of the macOS operating system. A few years ago, PVS-Studio has already checked the kernel source code. It coincided with the analyzer release on macOS. It's been a while since then. The new kernel source code has been released. A second check? Why not?

          Read more →
          • +1
          • 912
          • Comment
        • Andrey2008 March 22, 2021 at 03:07 PM

          One Useful Comment

          • PVS-Studio corporate blog,
          • Programming,
          • Perfect code,
          • C++,
          • C

            One Useful Comment


            Most influential programmers say that code must be self-documenting. They find comments useful only when working with something uncommon. Our team shares this opinion. Recently we came across a code snippet that perfectly proves it.

            Read more →
            • +1
            • 573
            • Comment
          • Andrey2008 March 20, 2021 at 06:03 PM

            Example of How New Diagnostics Appear in PVS-Studio

            • PVS-Studio corporate blog,
            • Information Security,
            • Perfect code,
            • C++,
            • C

              PVS-Studio new C++ rule


              Users sometimes ask how new diagnostics appear in the PVS-Studio static analyzer. We answer that we draw inspiration from a variety of sources: books, coding standards, our own mistakes, our users' emails, and others. Recently we came up with an interesting idea of a new diagnostic. Today we decided to tell the story of how it happened.

              Read more →
              • 0
              • 209
              • Comment
            • IchNikola March 12, 2021 at 11:39 AM

              PVS-Studio 7.12 New Features for Finding Safety and Security Threats

              • PVS-Studio corporate blog,
              • Information Security

                Security. What does this word mean to you? Nowadays, companies spare no effort to ensure that their product is secured from hacking and all sorts of information leaks. PVS-Studio decided to help its users and expand the functionality in this area. Therefore, one of the main innovations of the upcoming release will be the introduction of analyzer new features which will ensure code safety and security. This article aims to present these features.

                Read More
                • 0
                • 208
                • Comment
              • SvyatoslavMC March 5, 2021 at 08:18 AM

                Short-lived Music or MuseScore Code Analysis

                • PVS-Studio corporate blog,
                • Open source,
                • C++,
                • C,
                • Sound

                  Having only programming background, it is impossible to develop software in some areas. Take the difficulties of medical software development as an example. The same is with music software, which will be discussed in this article. Here you need an advice of subject matter experts. However, it's more expensive for software development. That is why developers sometimes save on code quality. The example of the MuseScore project check, described in the article, will show the importance of code quality expertise. Hopefully, programming and musical humor will brighten up the technical text.

                  Читать далее
                  • 0
                  • 453
                  • Comment
                • Firensis March 4, 2021 at 12:04 PM

                  What Is yield and How Does It Work in C#?

                  • PVS-Studio corporate blog,
                  • Programming,
                  • .NET,
                  • C#,
                  • Development for Windows

                    C# capabilities keep expanding from year to year. New features enrich software development. However, their advantages may not always be so obvious. For example, the good old yield. To some developers, especially beginners, it's like magic - inexplicable, but intriguing. This article shows how yield works and what this peculiar word hides. Have fun reading!

                    Read more
                    • 0
                    • 937
                    • Comment
                  • Andrey2008 March 3, 2021 at 08:06 PM

                    PVS-Studio, Blender: Series of Notes on Advantages of Regular Static Analysis of Code

                    • PVS-Studio corporate blog,
                    • Information Security,
                    • Open source,
                    • C++,
                    • C

                      PVS-Studio and Blender


                      In our articles, we regularly repeat an important idea: a static analyzer should be used regularly. This helps detect and cheaply fix many errors at the earliest stage. It looks nice in theory. As we know, actions still speak louder than words. Let's look at some recent bugs in new code of the Blender project.

                      Read more →
                      • 0
                      • 225
                      • Comment
                    • Firensis March 2, 2021 at 05:30 PM

                      PVS-Studio Clashes with Hardcoded Passwords

                      • PVS-Studio corporate blog

                        PVS-Studio is a static analyzer that allows to find many problems hidden in the source code. Among them there are also errors related to application security. For example, the analyzer has recently learned to identify the presence of confidential data such as passwords in the code. The OWASP Top Ten list includes this potential vulnerability. It is much more dangerous than it may seem at first glance. What makes it so dangerous? How can a static analyzer save us from it? That's what you'll know about (and more) in this article!

                        Read more
                        • 0
                        • 281
                        • Comment
                      • Stolyarrr February 24, 2021 at 10:31 AM

                        Free Heroes of Might and Magic II: Open-Source Project that You Want to Be Part of

                        • PVS-Studio corporate blog,
                        • Open source,
                        • C++,
                        • Game development

                          Recently we found out that the new version of the fheroes2 project was released. In our company there are many fans of Heroes of Might and Magic game series. So, we couldn't pass it up and checked the project by PVS-Studio.

                          Читать далее
                          • +6
                          • 2.9k
                          • Comment
                        • Andrey2008 February 18, 2021 at 05:35 PM

                          Why PVS-Studio Uses Data Flow Analysis: Based on Gripping Error in Open Asset Import Library

                          • PVS-Studio corporate blog,
                          • Open source,
                          • C++,
                          • Algorithms

                            Why PVS-Studio Uses Data Flow Analysis
                            An essential part of any modern static code analyzer is data flow analysis. However, from an outside perspective, the use of data flow analysis and its benefit is unclear. Some people still consider static analysis a tool searching for something in code according to a certain pattern. Thus, we occasionally write blog posts to show how this or that technology, used in the PVS-Studio analyzer, helps to identify another interesting error. Today, we have such an article about the bug found in the Base64, one of the encoding standard implementations of binary data.

                            Read more →
                            • +2
                            • 341
                            • Comment
                          • Andrey2008 February 16, 2021 at 09:02 PM

                            Date Processing Attracts Bugs or 77 Defects in Qt 6

                            • PVS-Studio corporate blog,
                            • Information Security,
                            • Programming,
                            • C++,
                            • Qt

                              PVS-Studio & Qt 6


                              The recent Qt 6 release compelled us to recheck the framework with PVS-Studio. In this article, we reviewed various interesting errors we found, for example, those related to processing dates. The errors we discovered prove that developers can greatly benefit from regularly checking their projects with tools like PVS-Studio.

                              Read more →
                              • +1
                              • 1.3k
                              • Comment
                            • foto_shooter February 12, 2021 at 10:22 PM

                              Should We Initialize an Out Parameter Before a Method Returns?

                              • PVS-Studio corporate blog,
                              • .NET,
                              • C#


                                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 task.

                                Read more →
                                • +4
                                • 993
                                • Comment
                              • eugeneovsyannikov February 11, 2021 at 10:40 AM

                                Just for Fun: PVS-Studio Team Came Up With Monitoring Quality of Some Open Source Projects

                                • PVS-Studio corporate blog,
                                • Open source,
                                • PostgreSQL,
                                • C++

                                  Static code analysis is a crucial component of all modern projects. Its proper application is even more important. We decided to set up a regular check of some open source projects to see the effect of the analyzer's frequent running. We use the PVS-Studio analyzer to check projects. As for viewing the outcome, the choice fell on SonarQube. As a result, our subscribers will learn about new interesting bugs in the newly written code. We hope you'll have fun.

                                  Читать далее
                                  • 0
                                  • 483
                                  • 1
                                • IchNikola February 9, 2021 at 10:50 AM

                                  How to Get Nice Error Reports Using SARIF in GitHub

                                  • PVS-Studio corporate blog,
                                  • C++,
                                  • C#,
                                  • GitHub,
                                  • DevOps

                                    Let's say you use GitHub, write code, and do other fun stuff. You also use a static analyzer to enhance your work quality and optimize the timing. Once you come up with an idea - why not view the errors that the analyzer gave right in GitHub? Yeah, and also it would be great if it looked nice. So, what should you do? The answer is very simple. SARIF is right for you. This article will cover what SARIF is and how to set it up. Enjoy the reading!

                                    Читать далее
                                    • +3
                                    • 629
                                    • Comment
                                  • Andrey2008 February 5, 2021 at 12:44 PM

                                    COVID-19 Research and Uninitialized Variable

                                    • PVS-Studio corporate blog,
                                    • Open source,
                                    • Programming,
                                    • Perfect code,
                                    • C++

                                      0796_covid_sim/image1.png
                                      There is an open project COVID-19 CovidSim Model, written in C++. There is also a PVS-Studio static code analyzer that detects errors very well. One day they met. Embrace the fragility of mathematical modeling algorithms and why you need to make every effort to enhance the code quality.

                                      Read more →
                                      • +2
                                      • 672
                                      • 4
                                    • Ilya_Gainulin February 4, 2021 at 05:50 PM

                                      A Spy Undercover: PVS-Studio to Check ILSpy Source Code

                                      • PVS-Studio corporate blog,
                                      • Programming,
                                      • .NET,
                                      • C#

                                        In PVS-Studio, we often check various compilers' code and post the results in our blog. Decompiler programs, however, seem to be a bit neglected. To restore justice in this world, we analyzed the ILSpy decompiler's source code. Let's take a look at the peculiar things PVS-Studio found.

                                        Читать далее
                                        • 0
                                        • 494
                                        • Comment
                                      • Andrey2008 February 3, 2021 at 10:54 AM

                                        Finding Typos in the GTK 4 Project by PVS-Studio

                                        • PVS-Studio corporate blog,
                                        • Open source,
                                        • Perfect code,
                                        • C,
                                        • Development for Linux

                                          0793_GTK_4_continue/image1.png


                                          You may have already read a recent article about the first PVS-Studio run and filtration of warnings. We used the GTK 4 project as an example. It's about time we worked with the received report in more detail. Our regular readers may have already guessed that this article will be a description of errors found in the code.

                                          Read more →
                                          • +4
                                          • 260
                                          • 1
                                        • ValeryKomarov February 1, 2021 at 03:20 PM

                                          C# Programmer, It's Time to Test Yourself and Find Error

                                          • PVS-Studio corporate blog,
                                          • Programming,
                                          • .NET,
                                          • C#

                                            The PVS-Studio analyzer is regularly updated with new diagnostic rules. Curiously enough, diagnostics often detect suspicious code fragments before the end of the work. For example, such a situation may happen while testing on open-source projects. So, let's take a look at one of these interesting finding.

                                            Read more
                                            • 0
                                            • 734
                                            • Comment
                                          • ← here
                                          • there →
                                          • 1
                                          • 2
                                          • 3
                                          • 4
                                          • 5
                                          • 6
                                          • 7
                                          • 8

                                          Information

                                          • Foundation date

                                            Since 2008
                                          • Website

                                            viva64.com
                                          • Number of employees

                                            31–50 employees
                                          • Registration date

                                            May 6, 2013
                                          Twitter
                                            Читать @Code_Analysis

                                            Widget

                                            Widget

                                            Facebook

                                            Blog on Habr

                                            • Pitfalls in String Pool, or Another Reason to Think Twice Before Interning Instances of String Class in C#

                                              401 0
                                            • PVS-Studio Team's Kanban Board. Part 1: Agile

                                              377 0
                                            • MacOS Kernel, How Good Is This Apple?

                                              912 0
                                            • One Useful Comment

                                              573 0
                                            • Example of How New Diagnostics Appear in PVS-Studio

                                              209 0
                                            • PVS-Studio 7.12 New Features for Finding Safety and Security Threats

                                              208 0
                                            • Short-lived Music or MuseScore Code Analysis

                                              453 0
                                            • What Is yield and How Does It Work in C#?

                                              937 0
                                            • PVS-Studio, Blender: Series of Notes on Advantages of Regular Static Analysis of Code

                                              225 0
                                            • PVS-Studio Clashes with Hardcoded Passwords

                                              281 0
                                            • Free Heroes of Might and Magic II: Open-Source Project that You Want to Be Part of

                                              2.9k 0
                                            • Why PVS-Studio Uses Data Flow Analysis: Based on Gripping Error in Open Asset Import Library

                                              341 0
                                            • Date Processing Attracts Bugs or 77 Defects in Qt 6

                                              1.3k 0
                                            • Should We Initialize an Out Parameter Before a Method Returns?

                                              993 0
                                            • Just for Fun: PVS-Studio Team Came Up With Monitoring Quality of Some Open Source Projects

                                              483 1
                                            • How to Get Nice Error Reports Using SARIF in GitHub

                                              629 0
                                            • COVID-19 Research and Uninitialized Variable

                                              672 4
                                            • A Spy Undercover: PVS-Studio to Check ILSpy Source Code

                                              494 0
                                            • Finding Typos in the GTK 4 Project by PVS-Studio

                                              260 1
                                            • C# Programmer, It's Time to Test Yourself and Find Error

                                              734 0
                                            No reasons for downvotes yet
                                            Reasons for downvotes

                                            Top posts

                                            • Day
                                            • Week
                                            • Month
                                            • Audio over Bluetooth: most detailed information about profiles, codecs, and devices
                                              +22 176k 14 9
                                            • Java vs .Net: Who will Reign in the Future?
                                              +3 30.5k 5 3
                                            • Ugly API
                                              +1 622 0 0
                                            • React Token Auth
                                              +2 20.4k 17 22
                                            • Ugly API
                                              +1 622 0 0
                                            • Algorithms in Go: Bit Manipulation
                                              +2 555 6 0
                                            • Show me your settings and I will tell you who you are
                                              +5 412 1 0
                                            • Algebra of text. Examples
                                              +1 226 1 0
                                            • Multiple violations of policies in RMS open letter
                                              +16 2.8k 4 3
                                            • High-Quality Text-to-Speech Made Accessible, Simple and Fast
                                              +5 1.8k 0 5
                                            • How to Start Reverse Engineering in 2021
                                              +3 1.7k 9 0
                                            • Grinding in video games and real life
                                              +6 1.3k 3 4

                                            Your account

                                            • Log in
                                            • Sign up

                                            Sections

                                            • Posts
                                            • Hubs
                                            • Companies
                                            • Users
                                            • Sandbox

                                            Info

                                            • How it works
                                            • For Authors
                                            • For Companies
                                            • Documents
                                            • Agreement
                                            • Terms of service

                                            Services

                                            • Ads
                                            • Subscription plans
                                            • Content
                                            • Seminars
                                            • Megaprojects
                                            © 2006 – 2021 «Habr»
                                            Language settings
                                            About
                                            Support
                                            Mobile version
                                            Language settings
                                            Interface
                                            Content