AddressSanitizer 错误继续处理

AddressSanitizer 错误继续处理

💡 原文英文,约2000词,阅读约需8分钟。
📝

内容提要

Visual Studio 17.6引入了新的“checked build”功能,使用Address Sanitizer运行时的C和C++。新功能名为continue_on_error(COE),可以诊断和报告隐藏的内存安全错误,且没有误报。开发人员可以通过设置环境变量来启用COE功能,并将内存安全错误流式传输到stdout、stderr或日志文件。COE功能允许应用程序在报告独特的内存安全错误的同时继续运行。编译器会对二进制文件进行仪器化,以与address sanitizer运行时配合使用,现有的测试可以用于发现隐藏的内存安全错误。COE为在Windows上发布C和C++应用程序提供了简单的通过/不通过门槛。该功能显著减少了内存安全错误,如果报告了任何隐藏错误,则不应发布。鼓励开发人员尝试该功能并提供反馈。

🏷️

标签

➡️

继续阅读