Product News

Transforming C to C++

New video on using the latest version of DeepEnds.

Transforming C to C++

by Zeb Mason

About the video:

Performs a clustering analysis on a C call graph then manipulates it within Visual Studio to prototype a class.

Creating traditional Visual Studio sln from CMake

CMakeToVisualStudio parses CMake files to create a Visual Studio solution.

CMakeToVisualStudio

by Zeb Mason

About the release

CMakeToVisualStudio parses CMakeLists.txt and CMakeCache.txt files and creates a traditional Visual Studio solution from templated XML:

  • Might not build properly
  • Might be sufficient to work with historical tooling for Visual Studio
  • LGPL v2.1 set of libraries for reading CMake and Visual Studio projects and writing Visual C++ solutions

DeepEnds Release 3.0.1 for free

CycleRouter Ltd is pleased to announce a new release of our dependency analysis tool.

DeepEnds Release 3.0.1

About the release:

DeepEnds 3.0.1 analyses code for coupling and cohesion and deletes redundant code. It is a Windows program that integrates with Visual Studio.

It is free to use until the end of August 2020.

A Note of Caution about Using PVS-Studio on godbolt.org (Compiler Explorer)

We have added an option allowing you to experiment with the PVS-Studio static analyzer on the godbolt.org (Compiler Explorer) website. It supports analysis of C and C++ code.

A Note of Caution about Using PVS-Studio on godbolt.org (Compiler Explorer)

by Andrey Karpov

From the article:

This may be promising from the perspective of satisfying one's curiosity, writing articles, and so on. But there's a downside to it too: rather than using synthetic examples to explore or try out the tool, people may start relying on them to evaluate and compare it against other analyzers. And this is a very bad approach because the results will be unreliable and dependent on how the test examples are written.

SonarQube / SonarCloud detect buffer overflows in most POSIX functions

SonarQube and SonarCloud perform static analysis of C, C++ and 25 other languages. 

Detect C++ buffer overflows in most POSIX functions

By G. Ann Campbell

From the article:

Buffer overflows have been responsible for some of the most notorious crashes, worms, and hacks for more than 30 years, including the Morris worm, the Code Red worm, and the ping of death. More recently, VPNs have been compromised via buffer overflow; an overflow-related code execution flaw was found in macOS Mojave (fixed in Catalina); and a WhatsApp buffer overflow exposed users' private messages, location, and even camera and mic feeds. In short, buffer overflows aren't just bugs that could crash your program; they also represent serious threats to security. That's why we're excited to announce the availability of a new C and C++ rule to detect overflows in most POSIX functions: S5782, "POSIX functions should not be called with arguments that trigger buffer overflows".

PVS-Studio 7.07: Features Overview

The purpose of this article is to give a general overview of the features of the PVS-Studio static analyzer.

PVS-Studio 7.07: Features Overview

by Ekaterina Nikiforova

From the article:

The next command I'd like to talk about is called "Display CWE Codes in Output Window". PVS-Studio is a static application security testing (SAST) tool, which means its warnings can be classified according to the Common Weakness Enumeration (CWE).
 

GCC 10.1 Released--Jakub Jelinek

The new version is out.

GCC 10.1 Released

by Jakub Jelinek

From the article:

A year has lapsed away since the release of last major
GCC release, more than 33 years passed since the first
public GCC release and the GCC developers survived
repository conversion from SVN to GIT earlier this year.

Today, we are glad to announce another major GCC release, 10.1.

This release makes great progress in the C++20 language support,
both on the compiler and library sides [1], some C2X enhancements,
various optimization enhancements and bug fixes, several new
hardware enablement changes and enhancements to the compiler back-ends
and many other changes.  There is even a new experimental static
analysis pass [2]...

CppDepend v2020.1 Released! - Dependency Graph Completely Rebuilt, new Linux version, CUDA support

CppDepend allows architects and developers to analyze C and C++ code base, automate code reviews, and facilitate refactoring and migration.

CppDepend v2020.1

by CppDepend

About the release

CppDepend’s Dependency Graph feature has been rebuilt from scratch. And, thanks to several innovations, it is now a unique and differentiated tool for exploring and navigating code bases. Feature highlights include:

  • Optimized to work on very large codebases: For example, now the graph can be used to navigate in a very large project in real-time.
  • New graph navigation bar: expand/collapse parent nodes; focus on entangled code; generate call graphs, coupling graphs, inheritance graphs, and more.
  • New dependency graph layout option: group by project, namespace, or class with new color conventions and new filters.
  • Complex graphs are simplified with Clusters: cluster nodes can be automatically introduced to make large and complex graphs readable.
  • Search in graphs: Interesting graphs can be quickly obtained by searching elements by name and pruning un-matched elements.
  • Export graphs to SVG vector format
  • Dependency Graph presentation in reports has been improved: thanks to clusters feature.
  • Smart Graph Persistence: A list of actions can be persisted to obtain a graph that remains in-sync through code changes.

Also, CppDepend 2020.1 includes:

  • CppDepend on Linux completely rebuilt: The Linux GUI is completely rebuilt to use the GTK framework for a better user experience.
  • C/C++ plugin for SonarQube is now available on Linux
  • CUDA Support: CppDepend fully supports the analysis of CUDA-based applications.
  • Improved Physical structure analysis: When you create a new CppDepend project you have now the choice to use a logical view or a physical view.
  • Source File Store Out Of The Box: Parsed source files are now zipped at analysis time.
  • Bamboo and AppVeyor Integration: You can now integrate the CppDepend report to Bamboo and AppVeyor
  • Numerous Bugs Fixes and Improvements


Click here to see a series of short GIF animations that illustrate these features and product improvements.

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