如何将警告 C4715 转换为错误

Posted

技术标签:

【中文标题】如何将警告 C4715 转换为错误【英文标题】:How to convert warning C4715 to error 【发布时间】:2014-08-08 14:46:57 【问题描述】:

我正在使用 msys Make.exe 构建 cpp 文件,并获得以下内容 警告 c:\ankit_cc\wm2015git\wm-cpp\base\wmautomator\base\wmautomator.cpp(1047) : 警告 C4715: 'WMAutomator::fetchSerialNumbersBasedOnLpn' : 并非所有控制路径都返回值;

我想将上述警告设为错误。请建议。

【问题讨论】:

查看***.com/questions/2520853/… 但是,我有很多 C++ 文件,所以在我必须添加的每个文件中,我想在编译器级别添加 thia,我的意思是在 msys 或通用 makefile 中的某个地方,如 Makefile.nt5 找出 Visual Studio 中该选项启用的编译器开关,并在您的 makefile 中将其用于所有编译器调用...... @RedX 我正在使用 msys 的 Make 实用程序,所以我们无法从 VS 更改它。 【参考方案1】:

两种方法

#pragma warning (error : 4715)

http://msdn.microsoft.com/en-us/library/2c8f766e.aspx

编译时使用/we4715 选项传递给cl.exe

http://msdn.microsoft.com/en-us/library/thxezb7y.aspx

【讨论】:

这是我之前从***.com/questions/4750880/… 得到的,但我的问题是如何在 Makefile 中做同样的事情,因为我们无法在 Makefile 中添加 pragma @AnkitDixit - 查看我添加到答案中的第二种方式 /we4715 传递给 cl.exe【参考方案2】:

通过

/we4715

到你的makefile中的编译器。

【讨论】:

以上是关于如何将警告 C4715 转换为错误的主要内容,如果未能解决你的问题,请参考以下文章

将 iOS 应用程序转换为 64 位架构得到错误和警告

如何将绑定错误转换为运行时异常?

如何在 IAR EWARM 5.4 中抑制警告(从错误转换)

将枚举转换为具有溢出的整数时会出现警告

如何将警告和错误保存为函数的输出?

Boost:创建一个返回变体的函数