As for the generated code, I'm at the stage where I can implement the following: if a single UBSan hander is used to report multiple error kinds (__ubsan_handle_type_mismatch is used for -fsanitize=null,alignment,object-size), and these kinds have different recoverability, then we emit two handler calls like this:
Nice, I think we do not yet have this in gcc. -Y