Sanitiser Policy
Linux CI runs:
- normal Release and Debug builds
- AddressSanitizer with UndefinedBehaviorSanitizer
- ThreadSanitizer
MemorySanitizer is available for manual builds but is excluded from CI because trustworthy results require an instrumented C library and dependency stack. The Linux workflow uses stock distribution packages rather than such a stack.
What this means for contributors:
GALANTHUS_SANITIZER=memoryenables the manual MemorySanitizer configuration- MemorySanitizer results depend on an appropriately instrumented dependency environment
- the CI promise covers the sanitizer jobs listed above
If you are updating sanitizer support, keep the workflow, this policy, and
cmake/CompilerSettings.cmake aligned.