提问人:Steven Scott 提问时间:10/20/2022 更新时间:10/20/2022 访问量:368
在包含 pybind11 包装的 C++ 的 python 代码上运行 santizers(ubsan、asan 等)
Running santizers (ubsan, asan, etc) on python code containing C++ wrapped by pybind11
问:
我维护着一个大型的 C++ 库,我已经使用 pybind11 部分公开给 python。C++ 库包含单元测试,我有时会在各种清理程序下运行:asan、tsan 等。这些测试运行得很干净,但测试当然并不完美,你不能 100% 测试所有边缘情况。
当我将这个库与特定设置、特定数据集和各种选项一起使用时,有一个特定的 jupyter 笔记本崩溃,这些选项可以在纯 C++ 环境中复制,但这种复制将非常耗费人力、耗时且容易出错。
如果我面前有纯 C++,我会通过 ubsan、asan 等运行笔记本,以确保我不会目睹未定义的行为或段错误。有没有办法将这些消毒剂(或等效的东西)应用到我的笔记本上,而无需在原始 C++ 中重写所有 python 胶水?
答: 暂无答案
评论