gcc/cp/ChangeLog 2014-01-07 Balaji V. Iyer * parser.c (cp_parser_statement): Added a RID_CILK_FOR case. (cp_parser_omp_for_cond): Included a check for CILK_FOR along with CILK_SIMD. (cp_parser_omp_for_loop): Overall, added support to parse _Cilk_for statement along with omp for statements. (cp_parser_cilk_grainsize): New function. (cp_parser_pragma): Added a PRAGMA_CILK_GRAINSIZE case. (cp_parser_cilk_simd): Added a new parameter for grain. Added support to handle _Cilk_for loops along with #pragma simd for loops. * pt.c (tsubst_expr): Added CILK_FOR case. If the tree is CILK_FOR then just RECUR its clauses, instead of calling tsubst_omp_clauses. * semantics.c (handle_omp_for_class_iterator): Added 2 new parameters. Added a NE_EXPR case. Added a check for _Cilk_for statement and if so, then give a name for the new induction variable. (finish_omp_for): Added a check if the code is _Cilk_for and if true then insert all the iterator temporary variables into the _Cilk_for body. gcc/testsuite/ChangeLog 2014-01-07 Balaji V. Iyer * c-c++-common/cilk-plus/CK/cilk_for_errors.c: Made certain error tags C specific and inserted their C++ equivalents. * c-c++-common/cilk-plus/CK/cilk_for_grain_errors.c: Likewise. * g++.dg/cilk-plus/CK/cilk-for-tplt.cc: New testcase. * g++.dg/cilk-plus/CK/stl_iter.cc: Likewise. * g++.dg/cilk-plus/CK/stl_rev_iter.cc: Likewise. * g++.dg/cilk-plus/CK/stl_test.cc: Likewise.