Product News

Generate stub code from Gherkin DSL -- Zebedee Mason

A small Gherkin DSL parser that generates stub code

Cornichon

by Zebedee Mason

From the article:

The supported frameworks are:

  • cpp/cppunittest - Microsoft's Visual C++ test framework
  • cpp/googletest - Google Test

Code analysis with clang-tidy in Visual Studio--Eli Fessler

The safest safety comes from the tools.

Code analysis with clang-tidy in Visual Studio

by Eli Fessler

From the article:

Visual Studio 2019 version 16.4 Preview 1 brings a significant improvement to the C++ code analysis experience: native support for clang-tidy, a Clang-based “linter” tool developed by the LLVM Project that delivers a variety of code improvements such as modernization and standards conformance, static analysis, and automatic formatting...

For professors' note: use PVS-Studio to get students familiar with code analysis tools

We provide several options for free PVS-Studio licensing, including the ones for open projects. Specifically for educational purposes, in case if student's works aren't open, the best option is to add the following comment to the code.

For professors' note: use PVS-Studio to get students familiar with code analysis tools

by Andrey Karpov

From the article:

The PVS-Studio analyzer can be regarded as a fine example of a modern static code analysis tool. First, it's a great example to show the abilities of static analysis tools in detecting errors and security defects. Second, you can demonstrate its integration into the software development cycle to enable continuous code control. In its example, you can show integration with such systems as Jenkins, TeamCity, Azure DevOps, SonarQube, Travis CI and others.

CppDepend v2019.3 Released including support for the embedded projects.

We are happy to inform you that CppDepend v2019.3 has been released and is now available for download! CppDepend allows architects and developers to analyze C and C++ code base, customizing your own coding rules, and facilitate refactoring and migration.

CppDepend v2019.3

About the release:

CppDepend v2019.3 includes important updates:

  • Advanced support for Qt projects,
  • Out of the box support for embedded projects (Arm Studio, Code Composer Studio, Renesas studio,...)
  • Out of the box support for Eclipse projects,
  • (Improvement) Many bug fixes and improvements


Download and enjoy the new version of CppDepend now by clicking here.

Open Sourcing MSVC's STL

Just announced at CppCon:

Open Sourcing MSVC's STL

From the announcement:

Today at CppCon 2019, we (the MSVC team) announced that we’re releasing our implementation of the C++ Standard Library (also known as the STL) as open source.

https://github.com/microsoft/STL is our new repository, containing all of our product source code, a new CMake build system, and a README with more information. As it explains, we’re still working on migrating to GitHub. While you can clone and build the code right now, there are several things we need to do (like adding our test suites) before we can begin reviewing pull requests.

Q&A

Q: Why are you doing this?

A: There are several reasons. ...

C++20 Concepts Are Here in Visual Studio 2019 version 16.3

Compiler and library support for concepts is now available in Visual Studio 2019.

C++20 Concepts Are Here in Visual Studio 2019 version 16.3

by Xiang Fan

From the article:

C++20 Concepts are now supported for the first time in Visual Studio 2019 version 16.3 Preview 2. This includes both the compiler and standard library support.

First, we’re debuting the feature via /std:c++latest mode and once we have all C++20 features implemented across all Visual Studio products (compiler, library, IntelliSense, build system, debugger, etc.), we’ll provide them through a new /std:c++20 mode.

PVS-Studio 7.04

PVS-Studio is a tool designed to detect errors and potential vulnerabilities in the source code of programs, written in C, C++, C#, Java. It works in Windows, Linux, and macOS environment.

PVS-Studio 7.04

by Svyatoslav Razmyslov

From the article:

When working on a task developers take code from so many various places. A popular source of Copy-Paste code is the Stackoverflow website and similar ones. There are cases when a developer takes the code from an open source project and doesn't check license requirements. Thus, a closed source project may accidentally get a few files from an open source project with a Copyleft license, which obliges to make the entire project code open source. In companies with a large number of employees, it's difficult to keep track of this, whereas such actions might cause adverse risks and problems. So, PVS-Studio now has a diagnostic, which will help to find such files. It relates to all supported languages (C, C++, C#, Java). The diagnostic is looking for the following "virus" licenses: AGPL-3.0, GPL-2.0, GPL-3.0, LGPL-3.0.

Sourcetrail 2019.3 released -- Eberhard Gräther

Sourcetrail is a cross-platform Visual Source Explorer based on LLVM/Clang

<img alt="" data-cke-saved-src="https://www.sourcetrail.com/blog/images/release_2019_3/composition_trail.png" src="https://www.sourcetrail.com/blog/images/release_2019_3/composition_trail.png" 2638px;="" height:="" 1634px;"="" style="height: 142px; width: 230px; float: right;">

Sourcetrail 2019.3 released

by Eberhard Gräther

From the article:

The Sourcetrail 2019.3 release introduces the new Custom Trail dialog to query and display connections between any two symbols. Additionally, the new release brings Precompiled Header (PCH) Support for C and C++ projects to speed up the indexing step.

How to set up PVS-Studio in Travis CI using the example of PSP game console emulator

Travis CI is a distributed web service for building and testing software that uses GitHub as a source code hosting service. In addition to the above scripts, you can add your own, thanks to the extensive configuration options. In this article we will set up Travis CI for working with PVS-Studio by the example of PPSSPP C++ code.

How to set up PVS-Studio in Travis CI using the example of PSP game console emulator

by Maxim Zvyagintsev

From the article:

At the beginning of the travis_install function we install the compilers we need using environment variables. Then, if the $PVS_ANALYZE variable stores the value of Yes (we specified it in the env section when configuring the build matrix), we install the pvs-studio package. Besides it, there are also libio-socket-ssl-perl and libnet-ssleay-perl packages, but they are needed to send the results by mail, so they are not necessary if you have chosen another way of report delivery.

ReSharper C++ 2019.2 has arrived with improved C++20 support, new code analysis checks, and more

Welcome ReSharper C++ 2019.2 release!

ReSharper C++ 2019.2: Faster indexing, improved C++20 support, new code analysis checks, and better Unreal Engine support

by Anastasia Kazakova

The new update brings:

  • 15-25% faster indexing on typical solutions like LLVM or Unreal Engine.
  • More sophisticated support for Unreal Engine (built-in documentation for reflection specifiers, RPC support in refactorings, specific UE4 code analysis checks).
  • More C++20 support (char8_t and conditional explicit support, pack expansion in lambda init-capture, default constructible and assignable stateless lambdas, and more).
  • Updates to built-in code analysis (new checks to catch unmatched preprocessor directive and redundant final function specifier in a final class).
  • Updates to code completion, navigation, and code formatter.
  • New code hints.