【发布时间】:2016-12-06 08:56:19
【问题描述】:
我正在使用 Visual Studio 2015 Update 3。
我收到一个致命错误:
(代码 C1001):编译器发生内部错误。
代码如下:
template<typename T>
constexpr T epsilon = std::numeric_limits<T>::epsilon();
我读到它已在 Visual Studio Update 2 中修复。谁能解释我为什么会收到此错误?提前致谢。
【问题讨论】:
-
这里出现了很多很多问题:什么错误?为什么要使用模板来进行明显的函数调用,是否包含限制?
-
我不确定是否有 解释。至少从语言的角度来看,这看起来不错。如果这只是一个内部编译器错误,那么那些没有有用的解释......除非你是编译器作者。因此,只需将 ICE 报告给编译器编写者。
-
仅供参考,模板变量是 C++14,而不是 C++11。
-
你也可以试试更新 5 吗?也许其他人已经找到了它,并且在此期间它得到了修复..
-
因为存在内部错误。一个错误。您还需要了解什么?
标签: c++ visual-c++ visual-studio-2015 c++14 internal-compiler-error