May 2021

The Meeting C++ online job fair is next week!

Next week Tuesday and Wednesday Meeting C++ again organizes an online C++ job fair.

Meeting C++ online job fair

Meetup event for Tuesday afternoon (15-18:00 CEST)

Meetup event for Wednesday evening (20-23:00 CEST)

by Jens Weller

About the event:

The event gives the community the chance to get to know employers and companies searching for new hires in C++. The events will happen in remo, and are 3 hours long, you can come at any time to chat with the attending companies. Also you can share your CV with some of the companies via cvupload.meetingcpp.com

For employers, you still can book a free table or the listing in the CV Sharing form, which will also give you a bit more of visibility with the logo at meetingcpp.com.

Finding Bugs with AddressSanitizer: Patterns from Open Source Projects--Kevin Cadieux

Are you using it?

Finding Bugs with AddressSanitizer: Patterns from Open Source Projects

by Kevin Cadieux

From the article:

AddressSanitizer (ASan) was officially released in Visual Studio 2019 version 16.9. We recently used this feature to find and fix a bug in the MSVC compiler itself. To further validate the usefulness of our ASan implementation, we also used it on a collection of widely used open source projects where it found bugs in Boost, Azure IoT C SDK, and OpenSSL. In this article, we present our findings by describing the type of bugs that we found and how they presented themselves in these projects. We provide links to the GitHub commits where these bugs were fixed so you can get a helpful look at what code changes were involved. If you are unfamiliar with what ASan is and how to use it, you may want to take a look at the AddressSanitizer documentation prior to delving into this article...

How to speed up building ang analyzing of your project with IncrediBuild?

"How much longer are you going to build it?" - a phrase that every developer has uttered at least once in the middle of the night. Yes, a build can be long and there is no escaping it. One does not simply redistribute the whole thing among 100+ cores, instead of some pathetic 8-12 ones. Or is it possible?

How to speed up building ang analyzing of your project with IncrediBuild?

by Maxim Zvyagintsev

From the article:

At the same time, the build completed successfully, but something really bad happened now. I had to dig into the logs, or rather, the compilation dump. That's where I found the problem. The point was that these macros are declared in the local precompiled header, whereas we only want to preprocess the file. However, the include header that was used to generate the precompiled header is different from the one that is included to the source file! The file that is used to generate the precompiled header is a 'wrapper' around the original header included into the source, and this wrapper contains all of the required macros.

C++20 Coroutine: Under The Hood--Vishal Chovatiya

Know how they work.

C++20 Coroutine: Under The Hood

by Vishal Chovatiya

From the article:

A coroutine is one of the major feature introduced with the C++20 standard apart from Module, Ranges & Concept. And you see how happy I am to unfold it. I already set the baseline on this topic with my previous article that Coroutine in C Language, where we saw, how suspension-resumption of execution works! With this article “C++20 Coroutine: Under The Hood”, we will see how compiler creates magic & standard library helps it with basic infrastructure making C++20 coroutine more sophisticated(yet complex) & scalable/customizable...

Report from the virtual ISO C++ meetings in 2020 (core language)--Jason Merrill

Did you attend?

Report from the virtual ISO C++ meetings in 2020 (core language)

by Jason Merrill

From the article:

C++ standardization was dramatically different in 2020 from earlier years. The business of the International Organization for Standardization (ISO) committee all took place virtually, much like everything else during this pandemic. This article summarizes the C++ standardization proposals before the Core and Evolution Working Groups last year...

Coroutines series--Raymond Chen

The series continue.

C++ coroutines: Promise constructors

From the article:

So far, all of our coroutine promises have had only a default constructor. But the standard actually gives the promise access to the coroutine parameters, if it wants them...

A map through the three major coroutine series

From the article:

Our long national nightmare is not yet over: The three main coroutine series are now done, although that doesn’t mean I’m done with coroutines.

Here’s a map through the main series, at least. There is a direct route and a number of scenic routes...

A subtle way your await_suspend can access the coroutine frame when it shouldn’t

From the article:

As we learned in the very start of the series on coroutines, the await_suspend method cannot access the coroutine frame once it arranges for the coroutine to resume because that creates a race condition where the coroutine might already be resumed and possibly even run to completion before await_suspend finishes...

by Raymond Chen

 

Release 21.04 of AbsInt RuleChecker for C/C++

A new release of the AbsInt RuleChecker is available.

Release 21.04 of AbsInt RuleChecker for C/C++

by Absint

From the article:

AbsInt RuleChecker enhances its rule coverage for the Adaptive Autosar C++ coding guidelines. Other coding guidelines supported are MISRA C/C++, CERT C/C++, CWE, ISO/IEC TS 17961. RuleChecker runs on Windows, Linux, and macOS and provides plugins for Eclipse, Jenkins, TargetLink, and Keil µVision.

 

SonarLint for CLion brings static code analysis support for C and C++ projects

The latest release of SonarLint for CLion allows C and C++ developers to detect and fix Bugs, Vulnerabilities, and Code Smells, on the fly, right in the IDE, before code is committed to the repo. SonarLint is a free and open source static analysis extension directly installable from the JetBrains Marketplace.

SonarLint for IntelliJ 4.15 released – C and C++ support for CLion

By Marco Comi

From the article:


We are excited to announce this new version of SonarLint for the IntelliJ family of IDEs, that brings C and C++ support for CLion...Sonarlint will not only detect issues: our accurate rule descriptions will help you understand what is at stake and guide you to fix your issues with examples. In other words you will be able to fix your issues before they are even committed to your repository. For instance, you can have a look at our 500+ types of C++ detections here.