Clang编译器选项将异常规范松散错误作为警告
问题描述:
有没有办法将异常不匹配错误当作叮当中的警告处理?Clang编译器选项将异常规范松散错误作为警告
source_file.cpp:12:18: error: exception specification of overriding function is more lax than base version virtual void Func(){}
我得到错误与谷歌模拟功能,指定异常说明符。看https://github.com/google/googletest/pull/681和其他报告的问题,不知道这是否会在谷歌模拟得到修复,所以至少对于测试代码,如果可能的话,我想禁用这个。
//clang 3.8.0
#include <iostream>
struct A
{
virtual void Func() throw() {}
};
struct B : public A
{
virtual void Func(){}
};
int main()
{
B b;
return 0;
}
答
是的,使用-fms-extensions
命令行选项。
MSVC仅对此提出警告,因此使用铿锵MSVC兼容模式时,代码将进行编译,并且错误将被等同的警告替换。
更多关于铿文档中的MSVC兼容模式, here。
谢谢你的工作! – user3279954