Using GitHub Actions for Continuous Integration -- Richard Thomson
Utah C++ Programmers has released a new video:
Using GitHub Actions for Continuous Integration
by Richard Thomson
From the video description:
GitHub actions allow you to set up continuous integration for your C++ project. You can configure, build and test your code in a variety of operating systems and hardware configurations.
This month, Richard Thomson will give us an introduction to GitHub actions for continuous integration of C++ projects. We'll look at how to set up automatic building and testing of code on various repository events, such as commits, pull requests, and so-on.
Some of the topics we will cover are:
- How to configure GitHub actions from scratch
- How to use some continuous integration project templates
- How to run tests
- How to integrate custom build/test environments
https://www.youtube.com/watch?v=1q8BQtvr8sY
<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="" frameborder="0" height="315" src="https://www.youtube.com/embed/1q8BQtvr8sY" title="YouTube video player" width="560"></iframe>

The Curiously Recurring Template Pattern (CRTP) is a heavily used idiom in C++. It is similarly resistant to understanding as the classic design pattern visitor I presented in my last post: “
Some time ago I started working on P1705 Enumerating Core Undefined Behavior, I have collected a large set of undefined behavior (UB) during that time. There is going to be a lot of work involved in getting the annex into shape and editing it into the standard. While this work is ongoing, I will take some time to write blog posts to explore the set of undefined behaviors.
Anyone who thinks a small C++ standard follows a significant C++ standard is wrong. C++23 provides powerful extensions to C++20. These extensions include the core language, particularly the standard library. Today, I present a small but very impactful feature of the core language: deducing this.
In the 2023 Annual C++ Developer Survey conducted by the C++ Foundation, the community identified a number of major pain points when working with C++.
Question from reddit poster: I am preparing to release a new feature, a fat pointer class (virtual_ptr), that makes method dispatch even more efficient. Dispatching a method with one virtual argument via a virtual_ptr takes only three instructions and two independent memory reads. As an interesting side-effect, it is now possible to use YOMM2 with non polymorphic classes hierarchies.