提问人:joaerl 提问时间:11/22/2018 更新时间:11/23/2022 访问量:1192
地址Sanitizer interceptor_via_fun
AddressSanitizer interceptor_via_fun
问:
想要禁止显示 AddressSanitizer 检测到的以下错误。
==114064==ERROR: AddressSanitizer: stack-use-after-scope on address 0x7ffe60fee2f0 at pc 0x000001e6ef34 bp 0x7ffe60feb6c0 sp 0x7ffe60feb6b8
WRITE of size 8 at 0x7ffe60fee2f0 thread T0
#0 0x1e6ef33 in std::_Function_base::_Function_base() /opt/gcc-8.2.0/include/c++/8.2.0/bits/std_function.h:252
#1 0x1e6ef33 in function<Engine::Engine(const Resource&, SourceDataVersion, Engine::CalculationResolution)::<lambda(std::unique_ptr<const model::Car>)> > /opt/gcc-8.2.0/include/c++/8.2.0/bits/std_function.h:668
...
我在想设置 ASAN_OPTIONS=suppressions=asan_blacklist.txt,其中包含 asan_blacklist.txt
interceptor_via_fun:_Function_base
正如文档所说,可以解决问题
interceptor_via_fun:NameOfCFunctionToSuppress
但事实并非如此。看到谷歌搜索“AddressSanitizer interceptor_via_fun”只返回 151 个结果,我感到非常震惊。:/
我应该在抑制文件中放什么?
答:
-3赞
Adna Kateg
11/25/2020
#1
你没有试过这个llvm手册吗?
并添加以下行以抑制您的外部库
interceptor_via_lib:NameOfTheLibraryToSuppress
0赞
Alex E
11/23/2022
#2
https://github.com/google/sanitizers/issues/1027#issuecomment-1147125536 有一个解释。此外,您在此处使用的是 lambda 和函子,可能不受支持
评论