C++

Featured image for C-language topics.
Article

Printf-style debugging using GDB, Part 2

Kevin Buettner

Learn how to use virtual print statements in the GDB debugger. This second article in the series shows how to save commands and output for later use.

Featured image for C-language topics.
Article

Printf-style debugging using GDB, Part 1

Kevin Buettner

You can use the GDB debugger to understand program behavior without any source code changes. In Part 1, learn how to run virtual print statements.

Featured image for: Automating the testing process for SystemTap, Part 1: Test automation with libvirt and Buildbot.
Article

Explore new features in SystemTap 4.5.0

Stan Cox

SystemTap allows access to low-level Linux kernel features. Explore enhancements to context variables, alias syntax, and BPF features in version 4.5.0.

Featured image for: Value range propagation in GCC with Project Ranger.
Article

Porting your code to C++17 with GCC 11

Marek Polacek

C++17 is now the default version in the GNU Compiler Collection. Find out what you need to know when updating your code to C++17 with GCC 11.

Featured image for SystemTap topics.
Article

Opening black boxes with statement tracing

Frank Eigler

Do you need a quick way to solve bugs in foreign library code? Learn how to use SystemTap for statement tracing and differential analysis in any library.

Featured image for: Instant replay: Debugging C and C++ programs with rr.
Article

How to debug C and C++ programs with rr

William Cohen

Learn how you can go back in time and replay what went wrong in a C/C++ program with rr (a GNU Debugger Linux enhancement) in this short demo.

Featured image for: Report from the virtual ISO C++ meetings in 2020 (core language).
Article

New C++ features in GCC 10

Marek Polacek

Explore the front end-based C++ features that C++ application programmers care most about in GCC 10.1 (G++ 10.1), which include many C++20 proposals.

Stack clash mitigation in GCC, Part 3
Article

Stack clash mitigation in GCC, Part 3

Jeff Law

Discover the design principles and performance improvements behind GCC's code generation strategies for defending against stack clash attacks.