error: expected primary-expression before ‘int’

error: expected primary-expression before ‘int’

我正在使用: gcc --版本 gcc (Ubuntu 4.9.2-0ubuntu1~14.04) 4.9.2

我正在尝试编译以下程序:

#include <iostream>
#include <cilk/cilk.h>

using namespace std;

int main(){

    cout << "\nStart\n";
    cilk_for (int i = 0; i < 10; i++) {
        cout << "I = " << i;
    }

}

但是得到如下错误:

g++ -fcilkplus Cilk_1.cpp 
Cilk_1.cpp: In function ‘int main()’:
Cilk_1.cpp:9:12: error: expected primary-expression before ‘int’
  cilk_for (int i = 0; i < 10; i++) {
            ^
Cilk_1.cpp:9:23: error: ‘i’ was not declared in this scope
  cilk_for (int i = 0; i < 10; i++) {
                       ^

怎么了?

谢谢

从评论中的 link Chris gave 来看,GCC 4.9 似乎支持 cilk 扩展的所有功能 除了 _Cilk_for 开箱即用。因此,您的编译器 (GCC 4.9) 没有 cilk_for 支持。

如上所述,在 gcc 5.0 中添加了对 cilk_for 的支持。