struct X {
constexpr static char a1[] = "hello"; // Okay
constexpr static const char* a2[] = {"hello"}; // Error
};
int main(){}
使用gcc进行编译会产生错误:
错误:在'{'标记
之前,不允许使用括号括起的初始值设定项
这是非法使用constexpr吗?
修改
我尝试了3个不同版本的gcc,它在我最新的4.7.0上编译(我刚下载它,我使用的是mingw-w64),所以它看起来是一个固定的bug(链接到虽然bug会很好!)。
4.7.0 20120311(预发行)//好的
4.6.4 20120305(预发布)//错误
4.7.0 20110829(实验性)//错误
答案 0 :(得分:2)
这是一个已修复的错误。我已确认代码使用g++ 4.7.0 20120311 (prerelease)
编译。