Encourage using sanitizers
Summary
GCC and clang come with a set of sanitizers that attempt to find various common mistakes at runtime. Examples include out-of-bounds array indices, dangling pointers, unsafe concurrent access, division by zero... They are enabled using the -fsanitize
compiler option; refer to the GCC manual for details. -fsanitize=address
alone found several bugs in the various code bases I use.
We should provide instructions how to enable them to encourage their use, and maybe eventually run CI tests with sanitizers enabled.