$ clang --std=c++0x -O1 -fno-omit-frame-pointer -g ./prog.cpp
In file included from ./prog.cpp:41:
In file included from /usr/include/c++/4.6/thread:37:
/usr/include/c++/4.6/chrono:666:7: error: static_assert expression is not an integral constant expression
static_assert(system_clock::duration::min()
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
$
我安装了gcc 4.8,但它使用的是4.6lib。我相信如果它使用4.8这不会发生(当我第一次遇到这个问题时读到某个地方)。
我也安装了4.6但是如果没有我的系统翻转我无法删除它。 elementaryOS。
编译下面的代码会触发这个错误(是的,我知道,我没有加入。只是一个例子。)
#include <thread>
using namespace std;
void func(int a);
int main(int argc, char const *argv[])
{
thread(func, 5);
return 0;
}
void func(int a){
a++;
}