Introduction to Code Sanitizers - Mathieu Ropert - code::dive 2023
HTML-код
- Опубликовано: 28 авг 2024
- Introduction to Code Sanitizers
Some bugs are easy to catch, while others can be quite painful to track down and analyze with traditional step debugging methods. This is particularly true of memory corruptions (out of bounds read/write, use after free...), race conditions and undefined behaviour which may only reproduce in small fraction of the cases. Luckily there exist a range of code sanitizing tools that can instrument a given program and reveal bugs that would normally be hard to find by "forcing" any undefined behaviour to exhibit clear and visible symptoms (usually a breakpoint, or a termination with a stack trace).
Join me for a tour of the various tool options at your disposal on major platforms and what can bring to the table. In this talk we will have a look at bits you may have already been using without thinking of sanitizers such as the debug C++ standard library implementations, and then look at more advanced tools such as Valgrind, AddressSanitizer, ThreadSanitizer and UndefinedBehaviorSanitizer.
About the speaker - Mathieu Ropert
French C++ expert working on (somewhat) historical video games. Has a love/hate relationship with build systems but lately mostly focuses on performance and multithreading. Past speaker at CppCon, Meeting C++ and ACCU. Used to run the Paris C++ User Group. Currently lives in Sweden.