A detailed discussion on how to convert C++ strings between Unicode UTF-16 and UTF-8 in C++ code using Windows APIs like WideCharToMultiByte, and STL strings and string views.| Giovanni Dicanio's Blog
This is part one of a series of blog posts on temporaries, copies, return value optimization, and passing by value vs. reference. A good place to start, and the point of this first article, is how …| C++ on a Friday
If there’s one constant with software developers, it is that sometimes they get bored. At these times, they tend to think dangerous thoughts, usually starting with ‘What if…’. Next you …read more| Hackaday
Last month, I was having dinner with a group and someone at the table was excitedly sharing how they were using agentic AI to create and merge PRs for them, with some review but with a lot of trust and automation. I admitted that I could be comfortable with some limited uses for that, such … Continue reading Schneier on LLM vulnerabilities, agentic AI, and “trusting trust”→| Sutter’s Mill
I’m running this poll to gather data, both for myself and for other interested C++ committee members. I’m curious to see what you all report! Please let us know what your current project is doing, and thank you for participating. The poll will close on Friday night.| Sutter’s Mill
In two weeks I’ll be giving a talk at the local C++ meetup here in peaceful, quirky, dog-walking, frisbee-throwing, family-friendly Portland, Oregon, USA. PDXCPP – Monthly MeetupOctober…| Sutter’s Mill
ROCm Core SDK 7.9.0 is a technology preview release built by TheRock. The Core SDK is a slimmed down version of the traditional ROCm release, focusing on foundational components for running high performance AI workloads on AMD GPUs. TheRock introduces a streamlined uniform system for building and testing these core components. TheRock manages dependencies between packages, so changes affecting several ROCm components can be coordinated automatically. Python releases built using TheRock can be...| AMD ROCm Blogs
/*Occasionally somebody will suggest that statically typed language X (Java, C#, Scala, F#, whatever) would be better off with C++'s "const", a type qualifer that supposedly makes objects immutable in certain contexts[1]. I'm not convinced. Const requires a fair amount of work and provides fairly small guarantees. This post is a bit of literate C++ program demonstrating some of the weaknesses| One Div Zero
We are thrilled to announce that Extenly is now an official service partner of Slint! This exciting collaboration marks a significant milestone in our journey to provide top-notch UI solutions and further enhance our offerings in embedded systems and cross-platform applications. What This Partnership Means As a service partner of Slint, we are equipped to| Extenly
Standard C++ generator| DeveloperNote.com
Learn about recent improvements made to the Clang bytecode interpreter, including performance optimizations, libc++ testing, and the #embed benchmark| Red Hat Developer
Let's see how to wrap the low-level and kind of "kitchen sink" C-interface FormatMessage Windows API in convenient C++ code, to get the error message string corresponding to a Windows system error code.| Giovanni Dicanio's Blog
Welcome to Fil-C, a memory safe implementation of the C and C++ programming languages you already know and love.| fil-c.org
Join Red Hat Developer for the software and tutorials to develop cloud applications using Kubernetes, microservices, serverless and Linux| Red Hat Developer
Discover the gains and costs of GCC’s enhanced runtime buffer overflow protection. Level 3 _FORTIFY_SOURCE preprocessor macro may detect more buffer overflows, but there’s a cost| Red Hat Developer
Speculations on arenas and non-trivial destructors| nullprogram.com
Why export templates would be useful in C++| warp.povusers.org
Remove it from the equation.| The Old New Thing
On database building blocks.| jacobsherin.com
I learned about the new range API of std::optional from Steve Downey at CppCon 2025 during his talk about std::optional. To be honest, I found the idea quite strange at first. I wanted to dig deeper to understand the motivation and the implications. The first example I encountered was this: 1 2 3 4 5 6 7 void doSomething(std::string const& data, std::optional logger = {}) { for (auto l : logger) { l.log(data); } return; } This shows that you can iterate over an optional. In fact, iterating ov...| Sandor Dargo’s Blog
We recently faced an interesting decision: what language should we use to rewrite our market data feed handler? Despite Rust's growing popularity in fintech and our own successful use of it in other systems, we chose C++.| databento.com
I usually only give one new talk a year, but this year I volunteered to give a second new talk at CppCon on a topic I haven’t spoken on before: draft C++26 contracts. Thank you to all the exp…| Sutter’s Mill
Qt 6.10 highlights ready-made accessibility features, easy layouts, higher contrast, simpler data exchange, smoother Android - and many other improvements!| www.qt.io
In the expanding world of AI my heart still lies in AST transforms, browser fingerprinting, and anti-bot circumvention. But my workflow felt... primitive.| nullpt.rs
2025-10-05| blog.ganets.ky
OpenZL is a new open source data compression framework that offers lossless compression for structured data. OpenZL is designed to offer the performance of a format-specific compressor with the eas…| Engineering at Meta
The following libs appeared in C:\dev\libs\boost_1_89_0\lib:| DeveloperNote.com
Clojure, LLVM, and C++ walk into a bar. jank is born. Don't think about it too much.| jank-lang.org
If you’re a regular reader of my blog, you know I’ve been sharing what I learn about new C++ language and library features ever since C++20. You probably also read my CppCon 2025 Trip Report. And this post is where the two come together. At CppCon I attended a great talk by Steve Downey about std::optional. Steve is the father of optional references—he co-authored P2988R12 with Peter Sommerlad. Let’s start with a little history. By now — at the end of 2025 — even C++17 feels like ...| Sandor Dargo’s Blog
Explore how GitHub Copilot’s Agent mode in VS Code simplifies C++/QML refactoring, automates multi-file edits, and boosts developer productivity.| KDAB
The application icon for my data wrangling software looks like this on a Mac up to macOS 15.x: However, Apple has once again nuked everything from orbit. Now it looks like this in macOS 26 Tahoe when the application is inactive or if you choose any Icon & widget style apart from Default: Thanks Apple. […]| Successful Software
std::flip is a little-known utility from the C++ standard library header : it is a higher-order function that accepts a Callable and returns an equivalent Callable with the order of its parameters reversed (or “flipped”).| The Sparkelling Bedangler
Manually editing the tasks.json to add the desired C++ compiler option.| Giovanni Dicanio's Blog
In VS Code, selecting the C++ language standard is not as intuitive as one would expect.| Giovanni Dicanio's Blog
Let's discuss a possible way to build a "bridge" between the managed C# world and the native C++ world, using P/Invoke.| Giovanni Dicanio's Blog
Let's see how to fix a common problem when building mixed C++/C# projects in Visual Studio.| Giovanni Dicanio's Blog
Let's bust a myth that is a source of many subtle bugs. Are you sure that you can simply drop UTF-8-encoded text in char-based strings that expect ASCII text, and your C++ code will still work fine?| Giovanni Dicanio's Blog
How to *properly* convert Unicode strings to lower and upper cases in C++? Unfortunately, the simple common char-by-char conversion loop with tolower/toupper calls is wrong. Let’s see how to …| Giovanni Dicanio's Blog
There’s a niche genre of music on the internet called “oscilloscope music”. This is electronic music that is designed to be visualized with an oscilloscope. Music visualizers have existed for a long time, but they often just display an image that represents the audio abstractly. Oscilloscope music allows the musician to draw arbitrary shapes using ... Read more| VAZGRIZ
This is the third in a series of blog posts about how I wrote and optimized VkColors, a small compute program written using Vulkan. | vazgriz.com
XTX Markets is a leading algorithmic trading firm which uses state-of-the-art machine learning technology to produce price forecasts for over 50,000 financial instruments across equities, fixed income, currencies, commodities and crypto. It uses those forecasts to trade on exchanges and alternative trading venues, and to offer differentiated liquidity directly to clients worldwide. The firm trades over $250bn a day across 35 countries and has over 250 employees based in London, Singapore, New...| www.xtxmarkets.com
My CppCon keynote video is now online. Thanks to Bash Films for turning around the keynotes in under 24 hours! C++ has just reached a true watershed moment: Barely three months ago, at our Sofia me…| Sutter’s Mill
NP-Incompleteness:| www.kuniga.me
Why C++ remains a powerful and relevant programming language in today's tech landscape.| dayvster.com
The new Constexpr Debugger available in the first CLion 2025.3 EAP build allows you to stay in the compiler’s world and see what really happens.| The JetBrains Blog
[RFC] Ripple: A Compiler-Interpreted API for Efficient SIMD Programming TL;DR We have been working on Ripple, a lean addition to LLVM to support Single-Program, Multiple-Data (SPMD) and loop-annotation-based parallel programming for SIMD hardware. We propose a parallel programming API to support these two models, which departs from GPU-style SPMD programming, in that block computations of different dimensions (including 0) can coexist in the same function. This makes it easier to explicitly e...| LLVM Discussion Forums
Incredibuild Team reading time: Modern C++ development spans a vast range of applications—from high-performance servers and intricate game engines to AI-driven systems and cross-platform GUI software. Choosing the right library can make or break a project’s success, reducing development time, keeping your codebase cleaner, and ensuring software is future-proof. This post explores some of the […] The post Top 10 C++ libraries for your next project appeared first on incredibuild.| incredibuild
Incredibuild Team reading time: In the world of large-scale C++ development, selecting the right build system is key when dealing with complex project structures, slow build times, and a tangle of configuration files. Companies need a build system that aligns with their specific needs, whether that entails speed, flexibility, ease of use, or cross-platform compatibility. […] The post Choosing the right C++ build system: A comprehensive guide for developers appeared first on incredibuild.| incredibuild
What is a C++ compiler and how does it work? - C++ - incredibuild| incredibuild
This is an overview of some recent additions to the SimGrid code| /dev/posts/
If you pick a random talk at a C++ conference these days, there is a fair chance that the speaker will mention safety at least a couple of times. It’s probably fine like that. The committee and the community must think about improving both the safety situation and the reputation of C++. If you follow what’s going on in this space, you are probably aware that people have different perspectives on safety. I think almost everybody finds it important, but they would solve the problem in their...| Sandor Dargo’s Blog
This won’t be a long post, I promise. I decided to post more often, and I realized my posts require exponentially long time to write, correct, and more importantly convince myself they’re good enough and won’t contain too many mistakes (and inevitably I end up finding another couple of mistakes just after hitting “Publish”). Ok, …| C++ explained to my dog
There’s this annoying thing I’ve seen this in many codebases, and I’ve wrote it myself during the years.| C++ explained to my dog
Thanks to C++ on Sea for inviting me to speak in June! The talk video is now live, linked below. It was recorded just 48 hours after the Sofia meeting ended, with key updates hot off the press. Not…| Sutter’s Mill
We are excited to announce that GitHub’s Dependabot now brings automated dependency updates to C++ projects using vcpkg. This support is available for projects using vcpkg manifest files, empowering teams to keep their library dependencies current and secure with minimal effort. With Dependabot, your repo can receive automatic pull requests to upgrade your libraries to […]| C++ Team Blog
Note: Everything that follows is purely my personal opinion as an individual. It should not be seen as any sort of policy of the Meson buil...| nibblestew.blogspot.com
NP-Incompleteness:| www.kuniga.me
I reported this to ZipRecruiter months ago. When you use Agile, off-shore and “priced right” labor, one cannot expect valid software or anything that was even partially tested. Agile is just hacking on the fly after all. To start with, C++ is one of the most popular embedded systems programming languages ever. It’s predecessor, C, is the “portable assembly language” used to write numerous operating systems, including Linux. Anyone who went to college for an … ZipRecruiter Duth Suc...| Logikal Blog
Essential Constants for Numerical Algorithms and Scientific Computations| Lei Mao's Log Book
Hi! I am looking for a little input. The context is that I am trying to reduce the size of our arm64 (elf) executable. We can’t afford to lower the optimisation level due to performance targets, but we already do the following to keep exe sizes down: visibility=hidden We use a PGO profile ThinLTO data/function sections and gc-sections We don’t use RTTI/exceptions Enabled ICF in lld Is there something I am missing? I have searched through the forums and there has been talk about a machine ...| LLVM Discussion Forums
shared_ptr<T>: the (not always) atomic reference counted smart pointer| snf.github.io
Qt 6.10 introduces a generic implementation of QAbstractItemModel that can many any C++ range available to Qt's UI frameworks.| www.qt.io
A string formatting library in 65 lines of C++| riki's house
Version 4 of Microsoft's Proxy library brings feature improvements, better diagnostics, better code generation, modern compiler/debugger support.| C++ Team Blog
I've been able to finish the version 0.4.1 of budgetwarrior before I though :) Expense templates The "most useful" new feature of this release is the ability to create template for expenses. For that| Blog blog("Baptiste Wicht");
I've just released a new version of my command-line budget manager: budgetwarrior 0.4. Enhanced aggregate overview The aggregate overviews have been greatly improved. First, there is now a budget ove| Blog blog("Baptiste Wicht");
I've finished a new version of budgetwarrior: budgetwarrior 0.3.1 Changes The most interesting change is the ability to estimate the date when it is a good time to buy something from the wish list. Th| Blog blog("Baptiste Wicht");
When working in a C++ repo, you often are maintaining and updating existing code just as often as you are writing new code. However, updating code in C++ can often require navigating to several different locations in a file to ensure consistency, which can disrupt your logical workflow. For example, changing a data member’s access […]| C++ Team Blog
Learn how to forward Rust tracing logs to the Qt logger using CXX-Qt 0.8.0. Achieve unified logging, consistent formatting, and better filtering for Rust + Qt applications.| KDAB
This is not a formal proposal. It’s just my take on what a working proposal would generally look like. In particular there are real proposals that look a lot like this (and I think they get some of the details wrong but that’s beside the point). If you want a serious takedown of the most […]| Abandonculture
arith-cxx-tagless-final| Shayne Fletcher
Whenever invariants can be expressed as proofs rather than as tests that may or may not be exhaustive, the mathematical guarantees of model checkers will provide stronger assurances the code is correct.| Colin Breck
Python's os.path.abspath or Path.absolute are great: you give them a path, which might not exist, and you get a path you can use regardless of the current directory. os.path.abspath will also normalize it, while Path will not by default because with Paths a normal form is less needed. This is great to normalize input, regardless of if it's an existing file you're needing to open, or a new file you're needing to create. In C++17, there is a filesystem library with methods with enticingly simil...| Enrico's blog
One of the things that always bothered me about video calling apps, is that what is showed to you on the bottom right corner never reflects the quality of the video your interlocutor is actually receiving. In fact compression is the name of the game in video calling apps, as understandably they try to minimize […]| ReachableCode
The first thing I do every time I need to learn a new codebase is to start drawing the UML diagram of its classes, and usually give up soon after I started. The process of doing it manually is certainly useful, but now with reflections I figure it would be fun to try generate it instead.| ReachableCode
The Inevitable Transformation| krakjoe.github.io
The topic of dependencies management is coming back and again. nix and nixpkgs being a rich repository, provides a convenient way to manage both project dependencies and related tooling in a reproducible way. This is something I’m finding more and more useful as a fundamental development tool. nix is quite complex and some exploration is needed to wrap your head around it. In this post, I’m going through most basic use cases as well as describe some basics of nix language itself - mainly ...| twdev.blog
It’s no secret that my taste in programming languages is very weird for a programming language enthusiast professional. Several of my last few posts are about Go, broadly regarded as the programming language equivalent of eating plain oatmeal for breakfast.| mcyoung.xyz
How STL algorithms parallel the fundamental theorem of calculus.| mmapped.blog
This blog post summarizes changes to the vcpkg package manager as part of the 2025.06.13 registry release, 2025-04-16, 2025-05-19, and 2025-06-02 tool releases, as well as changes to vcpkg documentation throughout May and June. This release includes bug fixes, several documentation changes, and the removal of the x-gha binary caching provider for GitHub (alternatives are […]| C++ Team Blog
Enhance your C++ logging with pretty-printed, indented output for nested structs using fmt and spdlog. Learn to implement custom formatters with CRTP for clean, readable logs.| KDAB
In computing, serialization is the process of translating a data structure or object state into a format that can be stored or transmitted and reconstructed later. The opposite operation, extracting a data structure from a series of bytes, is deserialization. en.wikipedia.org 開発者ブログの主にネタプログラミング担当、e.…| ESM アジャイル事業部 開発者ブログ
The following post will talk about the design of the first version of the Intermediate Representation of Kunai, the design decisions and how it was implemented.| Eduardo Blázquez’s Personal Webpage
Following the previous post about using Triton for solving challenges through symbolic execution and SMT Solving, this time we will try solving an obfuscated hacklu.| Eduardo Blázquez’s Personal Webpage
Triton is a library for doing Symbolic Execution, useful for doing common CTF challenges and analyzing obfuscations. TritonDSE is a library built on top of Triton which provides easy and customizable Dynamic Symbolic Execution Capabilities| Eduardo Blázquez’s Personal Webpage
Kunai is a library for analyzing Dalvik Executable Files, this library is written in C++ for performance reasons| Eduardo Blázquez’s Personal Webpage
Explanation of Static Single Assignment Algorithm for MLIR| Eduardo Blázquez’s Personal Webpage
Introduction In the previous part of this series, we laid out some foundations that will...| DEV Community
I’ve had a few conversations about async code recently (and not so recently) and seen some code that seems to make wrong assumptions about async, so I figured out it was time to have a serious chat about async, what it’s for, what it guarantees and what it doesn’t.| Il y a du thé renversé au bord de la table !
GWP-ASan finds rare memory errors in C and C++ called from Rust.| Colin Breck
Incredibuild Team reading time: From small microcontrollers to large industrial automation systems, embedded development is at the heart of the devices and products we use every day. This special branch of software engineering focuses on creating software for hardware environments that have limited power, limited computing, and often strict real-time constraints. In these situations, choosing […] The post C++ for embedded development: Pros and cons appeared first on incredibuild.| incredibuild
The packing of data is good practice for many reasons, including disk space and efficient RAM or cache access. If we know the meaning of data we can often narrow down the range and precision, making informed decisions as to the amount of bytes we need. I was inspired once… Continue reading| The Code Corsair
Recurrent internet discussions show a divide between programmers working in different industries. Topics like code clarity, performance, debuggability, architecture or maintainability are a source of friction. We are, paraphrasing the quote, industries divided by a common language. I am curious about other programmers’ experiences, and I wanted to present a… Continue reading| The Code Corsair
Within the arsenal of lights provided by game engines, the most popular are punctual lights such as point, spot or directional because they are cheap. On the other end, area lights have recently produced incredible techniques such as Linearly Transformed Cosines and other analytic approximations. I want to talk about… Continue reading| The Code Corsair
Last week, C++26 was finalized in Sofia, Bulgaria — and C++26 will include all of the reflection papers that we were pushing for:| Barry’s C++ Blog
A unique milestone: “Whole new language” Today marks a turning point in C++: A few minutes ago, the C++ committee voted the first seven (7) papers for compile-time reflection into draft…| Sutter’s Mill
So you want to serialize some DER?| alexgaynor.net
Solving the Leetcode 24 Game by precomputing the results in a relatively small associative array, although it is marked as a HARD problem.| WaspDev
A clever logarithmical solution for Leetcode Pens and Pencils problem| WaspDev
Introduction It has been an exciting few months for the Address Sanitizer (ASan) since our last update. In addition to our continuous focus on quality and correctness, our internal “dogfooding” (i.e. internal adoption) effort has reached several important milestones. In this update, I want to go over some of the quality improvements since Visual Studio […]| C++ Team Blog