-
如何摆脱GCC提供的自动添加的库?
我正在使用启用了消毒剂选项的gcc编译main.c文件。 结果,链接器命令的参数列表中包含“ -lubsan” -
使用Boost序列化时解决消毒剂错误
我最近尝试使用boost序列化来序列化一个包含<code>std::vector<std::unique_ptr<Base>>></code>作为成员的 -
有人在发布的软件中使用消毒剂吗?
消毒剂,例如: <ul> <li>地址消毒器(ASAN); </li> <li>未定义的行为消毒器(UBSAN)</li> <li>等</li> </ul> -
用于Address Sanitizer PLUS Undefined Behavior Sanitizer的日志记录控件?
几个消毒剂(来自GCC或Clang)无法合并–即在同一版本中同时使用,但Asan和Ubsan是可组合的–即我可以使 -
在启用UBSAN的情况下进行双精度到长时转换时,超出了可表示值的范围
在启用UBSAN的情况下编译以下代码会导致此错误: <blockquote> 运行时错误:值9.22337e + 18超出可表 -
如何在C ++代码中检测到一次性错误(OBOE)?
考虑以下简单程序: <pre><code>#include <array> #include <iostream> #include <cstdlib> int main(int argc, -
fsanitize =未定义会导致链接器错误
我正在尝试使用conda g ++编译器使用-fsanitize = undefined来编译程序。我遇到了__ubsan_handle_type_mismatch链接器 -
Clang ++ LSAN和UBSAN导致对`__ubsan_handle_add_overflow'的未定义引用
当我在使用编译器清理程序时,<code>clang++</code>上仅启用LSAN和UBSAN的链接错误使我感到困惑。 请注 -
为什么启用未定义的行为清理会干扰优化?
考虑以下代码: <pre><code>#include <string_view> constexpr std::string_view f() { return "hello"; } static con -
了解由未定义行为清理程序 (UBSan) 触发的运行时错误
当启用未定义的消毒剂时,我在 GNU 科学库 (GSL) 中发现了一个运行时错误: <pre><code>deque.c:58:11: runtime -
禁止特定的消毒剂检查,但仍然使所有其他程序的程序失败
我想抑制第三方库中的一个错误,但在任何其他失败的检查中仍然让程序退出 1。在我看来,无论 <code>-f -
为什么在链接共享库时,clang sanitizers 不链接 sanitizer 运行时
就在地址清理器 (<a href="https://releases.llvm.org/7.0.0/tools/clang/docs/AddressSanitizer.html" rel="nofollow noreferrer">https:/ -
抑制来自外部库的 UndefinedBehaviorSanitizer 警告
我有一个 UndefinedBehaviorSanitizer 版本 (<code>-fsanitize=undefined</code>),我试图在我无法控制的外部库中抑制 UB -
当 UBSAN (-fsanitize=undefined) 发现未定义行为时触发测试失败
我在这里有一个小的单元测试,它有未定义的行为。 源代码: <pre><code>#include <gtest/gtest.h>