do not click

Meeting C++ 2026   |  Online   |  Training   |  Books   |  Survey   |  Job fair   |  Advertising   |  Jobposting   |  Login

Meeting C++ 2026 - How Sanitizers Work

Conference | Live Schedule | Talks | Get your ticket | Slides | Set your timezone

How Sanitizers Work

Join session

Books by Anders Schau Knatten

C++ Brain Teasers

Anders Schau Knatten

On Day 3 at 11:40 (CET/Berlin) in Track B [Opal Room and online]

Sanitizers like AddressSanitizer and ThreadSanitizer can find issues in your code that your compiler and tests won't otherwise find. Some important examples include uses-after-free and data races. But how exactly are they able to do this?

Some sanitizers require you to rebuild your dependencies, but others don't. Why is that? How on earth can AddressSanitizer detect uses-after-free if deallocations in your dependencies aren't instrumented?

In this talk we'll look at how two commonly used sanitizers, AddressSanitizer and ThreadSanitizer, work under the hood. This will give you a better intuition for how to work with them, what kinds of errors you can expect them to find, and how to better interpret their results.

We'll also see why AddressSanitizer works even if you don't rebuild your dependencies, while ThreadSanitizer doesn't, and we'll see what you can do work around this if you're not able to rebuild your dependencies with ThreadSanitizer yet.

Finally, we'll see a practical example of how to configure Conan to automatically re-build and re-use dependencies for sanitizers.

After this talk, you'll not only know how to use sanitizers in practice, but also better understand their output and how to interact with them.

Please login to comment

Copyright Meetingcpp GmbH Imprint Privacy Policy