On Thu, Jul 09, 2015 at 10:50:14 +0200, Jakub Jelinek wrote:
> * parser.c (cp_parser_omp_var_list_no_open): Parse this.
> * cp-tree.h (finish_omp_declare_simd_methods): New prototype.
> * semantics.c (handle_omp_array_sections_1): Disallow this based
> array sections for OpenMP.
> (finish_omp_declare_simd_methods): New function.
> (finish_omp_clauses): Don't attempt to adjust linear step of
> this if it points to TYPE_BEING_DEFINED. Disallow this in
> all clauses expecting variable lists, except for declare simd
> linear/uniform/aligned clauses.
> (finish_struct_1): Call finish_omp_declare_simd_methods.
>
> * g++.dg/vect/simd-clone-2.cc: New test.
> * g++.dg/vect/simd-clone-2.h: New file.
> * g++.dg/vect/simd-clone-3.cc: New test.
> * g++.dg/vect/simd-clone-4.cc: New test.
> * g++.dg/vect/simd-clone-4.h: New file.
> * g++.dg/vect/simd-clone-5.cc: New test.
> * g++.dg/gomp/this-1.C: New test.
> * g++.dg/gomp/this-2.C: New test.
One more warning:
gcc/cp/parser.c: In function ‘tree_node*
cp_parser_omp_var_list_no_open(cp_parser*, omp_clause_code, tree, bool*)’:
gcc/cp/parser.c:27931:26: error: ‘name’ may be used uninitialized in this
function [-Werror=maybe-uninitialized]
token->location);
^
cc1plus: all warnings being treated as errors
make[4]: *** [cp/parser.o] Error 1
-- Ilya