https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69279
Bug ID: 69279 Summary: Uncomplete documentation for -fsanitize-recovery option Product: gcc Version: 6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: sanitizer Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org CC: dodji at gcc dot gnu.org, dvyukov at gcc dot gnu.org, jakub at gcc dot gnu.org, kcc at gcc dot gnu.org Target Milestone: --- Hello. As I've just read documentation related to -fsanitize-recovery: 'Currently this feature only works for -fsanitize=undefined (and its suboptions except for -fsanitize=unreachable and -fsanitize=return), -fsanitize=float-cast-overflow, -fsanitize=float-divide-by-zero, -fsanitize=kernel-address and -fsanitize=address. For these sanitizers error recovery is turned on by default, except -fsanitize=address, for which this feature is experimental.' IIUC this tells that default option for address sanitization is -fno-sanitize-recovery=address is default value. However, if one enables the option, it's still not enough as: $ tail -n3 libsanitizer/asan/asan_flags.inc ASAN_FLAG(bool, halt_on_error, true, "Crash the program after printing the first error report " "(WARNING: USE AT YOUR OWN RISK!)") Thus one has to run the instrumented binary with: ASAN_OPTIONS="halt_on_error=0" ./a.out Does it worth for mentioning or should we just change default value of ASAN(halt_on_error) flag? Thanks, Martin