-
Notifications
You must be signed in to change notification settings - Fork 0
UndefinedBehaviorSanitizer Clang 7
Viktor Ostashevskyi edited this page Apr 6, 2020
·
2 revisions
It is actually set of smaller sanitizers, which can be used independently or in groups (undefined, nullability, shift, integer, bounds).
Recover and Trap columns shows whether sanitizer can be used with -fsanitize-recover
and -fsanitize-trap
.
Sanitizer | undefined | nullability | shift | implicit-conversion | integer | bounds | Recover | Trap |
---|---|---|---|---|---|---|---|---|
alignment | X | - | - | - | - | - | Default | Yes |
array-bounds | X | - | - | - | - | X | Default | Yes |
bool | X | - | - | - | - | - | Default | Yes |
builtin | X | - | - | - | - | - | Default | Yes |
enum | X | - | - | - | - | - | Default | Yes |
float-cast-overflow | X | - | - | - | - | - | Default | Yes |
float-divide-by-zero | X | - | - | - | - | - | Default | Yes |
function | X | - | - | - | - | - | Default | Yes |
integer-divide-by-zero | X | - | - | - | X | - | Default | Yes |
nonnull-attribute | X | - | - | - | - | - | Default | Yes |
null | X | - | - | - | - | - | Default | Yes |
nullability-arg | - | X | - | - | - | - | Default | Yes |
nullability-assign | - | X | - | - | - | - | Default | Yes |
nullability-return | - | X | - | - | - | - | Default | Yes |
object-size | X | - | - | - | - | - | Default | Yes |
pointer-overflow | X | - | - | - | - | - | Default | Yes |
return | X | - | - | - | - | - | NO | Yes |
returns-nonnull-attribute | X | - | - | - | - | - | Default | Yes |
shift-base | X | - | X | - | X | - | Default | Yes |
shift-exponent | X | - | X | - | X | - | Default | Yes |
signed-integer-overflow | X | - | - | - | X | - | Default | Yes |
unreachable | X | - | - | - | - | - | NO | Yes |
vla-bound | X | - | - | - | - | - | Default | Yes |
vptr | X | - | - | - | - | - | Default | NO |
unsigned-integer-overflow | - | - | - | - | X | - | Default | Yes |
implicit-integer-truncation | - | - | - | X | X | - | Default | Yes |
local-bounds | - | - | - | - | - | X | Yes | Yes |
Type | Name | Default value | Description |
---|---|---|---|
bool | bounds-checking-single-trap | false (?) | Use one trap block per function |