当使用带有 gcc 的消毒剂时,可以提供一个例外/抑制列表来处理误报等。
抑制文件格式的文档记录很差。
每个抑制的形式
name_of_check:path_or_name
的有效值是name_of_check
什么?
当使用带有 gcc 的消毒剂时,可以提供一个例外/抑制列表来处理误报等。
抑制文件格式的文档记录很差。
每个抑制的形式
name_of_check:path_or_name
的有效值是name_of_check
什么?
我求助于从源代码中获取值。这些基于 gcc 10.1:
ubsan
/ undefined
- 见libsanitizer/ubsan/ubsan_checks.inc
undefined
null
pointer-overflow
alignment
object-size
signed-integer-overflow
unsigned-integer-overflow
integer-divide-by-zero
float-divide-by-zero
invalid-builtin-use
implicit-unsigned-integer-truncation
implicit-signed-integer-truncation
implicit-integer-sign-change
shift-base
shift-exponent
bounds
unreachable
return
vla-bound
float-cast-overflow
bool
enum
function
returns-nonnull-attribute
nonnull-attribute
vptr
cfi
asan
/ address
- 见libsanitizer/asan/asan_suppressions.cpp
interceptor_name
interceptor_via_fun
interceptor_via_lib
odr_violation
lsan
/ leak
- 见libsanitizer/lsan/lsan_common.cpp
leak
tsan
/ thread
- 见libsanitizer/tsan/tsan_suppressions.h
none
race
race_top
mutex
thread
signal
called_from_lib
deadlock