# Ignorelist for HWAddressSanitizer. Turns off instrumentation of particular
# functions or sources. Use with care. You may set location of ignorelist
# at compile-time using -fsanitize-ignorelist=<path> flag.

# Example usage:
# fun:*bad_function_name*
# src:file_with_tricky_code.cc
