https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81598
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> --- This isn't a load, it is a cast, we sanitize just loads from memory. >From the almost non-existent testsuite coverage in LLVM it is hard to find out what exactly they decided to implement (-fsanitize=enum has a single testcase with a single memory load there, -fsanitize=bool 2 testcases with a single memory load each).