在Cobalt Release 11分支中,一些代码使用C ++ 11特性。它似乎与c ++ 11之前的编译器不兼容。
例如,starboard / common / optional.h使用std :: move如下:
optional(optional&& other) { // NOLINT(build/c++11)
if (other.engaged_) {
SetValue(std::move(other.value()));
} else {
InitializeAsDisengaged();
}
}
有没有办法使用早于C ++ 11的编译器构建Cobalt?
谢谢!
答案 0 :(得分:2)
Cobalt 9是Cobalt的最后一个版本,可以使用符合C ++ 03标准的编译器构建。
Cobalt团队决定切换到C ++ 11,以便更容易地采用最新版本的第三方库。特别是,Cobalt 11最大的依赖是使用C ++ 11的SpiderMonkey 45。
Cobalt团队推荐使用Clang 3.6+或GCC 4.9 +。