Product News

Introducing the new ReSharper C++ 2019.3 -- Igor Akhmetov

Welcome ReSharper C++ 2019.3

ReSharper C++ 2019.3: C++20 Concepts, Type Hints, Sorting of #includes, and more

by Igor Akhmetov

From the article:

Please welcome ReSharper C++ 2019.3, our third and final update of this year! Main highlights:

  • More sophisticated C++20 support, including Concepts.
  • Clang-Tidy updates and more flexible integration.
  • A new quick-fix will assist you with adding variables to the lambda capture list.
  • New type hints for auto variables, in structured bindings, for function and lambda return types.
  • Navigation improvements.
  • Sorting of #include directives.
  • More templates to generate UE4-specific code, as well as support for UE4’s Smart Pointers.
  • Additional project properties.
  • Performance enhancements.

PVS-Studio 7.05

We're glad to offer to your attention a quick overview of the PVS-Studio 7.05 code analyzer release. The analyzer is enriched with twenty new diagnostics and infrastructure improvements.

PVS-Studio 7.05

by Andrey Karpov

From the article:

The Blame Notifier utility meant to notify developers about the analysis results is now available on all platforms supported by the analyzer (Windows, Linux, macOS). Blame Notifier uses the information from the version control system (SVN, Git, Mercurial) to identify the person who wrote the code that triggered an analyzer warning.

CLion 2019.3: Concepts, Coverage, Ninja, Clang-based completion -- Anastasia Kazakova

Interested in giving a try?

CLion 2019.3: A Quality-Targeted Release Focused on Performance and Some Long-Awaited Enhancements

by Anastasia Kazakova

From the article:

Improving the IDE performance and fixing major bugs are always a top priority for our team. In this update we have been focusing especially on improving the performance in specific areas, eliminating UI freezes (not all, but many of them have been melted away!), and enhancing the editor and the integrations for our users:

  • Clangd-based code completion
  • Debugger updates
  • Ninja and other CMake generators
  • Switching between Header/Source files
  • Code Coverage
  • C++20’s Concepts

C++20 and ReSharper C++

Do you plan to start using C++20 any time soon?

C++20 and ReSharper C++

by Phil Nash

From the article:

In July of this year, in the German city of Cologne, the ISO WG21 committee approved the full draft of C++20. After Belfast, in November, we now have just one more meeting (in Prague) to deal with national body comments and get their approval. That means that, barring any catastrophes, C++20 will become the current standard sometime after February of next year.

So C++20 is still in the future, but we now have a very good idea of everything that will be in it. Large sections of it have already been implemented in several compilers. But it’s not just the compilers that are getting ahead of the game. ReSharper C++ supports many of these features already, too – often with extra analysis and insights enabled by them.

Support for C++20’s Concepts in CLion--Anastasia Kazakova

Are you using it?

Support for C++20’s Concepts in CLion

by Anastasia Kazakova

From the article:

Concepts are one of the biggest features coming in C++20, and knowing that, we’ve been thinking about supporting Concepts in CLion for quite a while. Enter Saar Raz with his C++20’s Concepts implementation in Clang! Long story short, we have been collaborating with Saar to merge his branch into our custom Clangd-based language engine in CLion, and started implementing some nice IDE features on top. Sounds ambitious enough, but we have thoroughly enjoyed the experience so far! A very early result of this collaboration was used by Saar in his CppCon 2019 talk on Concepts...

AddressSanitizer (ASan) for Windows with MSVC--Augustin Popa

Will you try it?

AddressSanitizer (ASan) for Windows with MSVC

by Augustin Popa

From the article:

We are pleased to announce AddressSanitizer (ASan) support for the MSVC toolset. ASan is a fast memory error detector that can find runtime memory issues such as use-after-free and perform out of bounds checks. Support for sanitizers has been one of our more popular suggestions on Developer Community, and we can now say that we have an experience for ASan on Windows, in addition to our existing support for Linux projects...

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.