我正在尝试使用新的 GCC 版本 7.2.1 编译我的项目,但动态异常规范存在问题:
error: ISO C++1z does not allow dynamic exception specifications
MEMORY_ALLOC_OPERATORS(SQLException)
问题是这些错误来自我无法控制的第三方库。
有什么办法可以解决吗?据我所知,我不能告诉编译器用警告替换错误。使用 --std=c++14
不是一个选项,因为我想使用 C++1z 的新功能。
原文由 Pustovalov Dmitry 发布,翻译遵循 CC BY-SA 4.0 许可协议
由于 P0003 ,C++17 删除了动态异常规范。在此之前,它们自 C++11 以来已被弃用。它们不再是语言的一部分,所以没有办法修复它。只要您需要该第三方库,直到它发生变化,您就会被困在 C++14 上。
如果你很绝望,你可以尝试:
但我不会推荐它。