mirror of
https://forge.sourceware.org/marek/gcc.git
synced 2026-02-22 03:47:02 -05:00
Add the assumption clause 'no_openmp_constructs' (which as most assumption clauses is ignored in the front end - for now). For Fortran, improve free-form parsing of argument-free clauses by avoiding substring matches. gcc/c/ChangeLog: * c-parser.cc (c_parser_omp_assumption_clauses): Add no_openmp_constructs clause. gcc/cp/ChangeLog: * parser.cc (cp_parser_omp_assumption_clauses): Add no_openmp_constructs clause. gcc/fortran/ChangeLog: * dump-parse-tree.cc (show_omp_assumes): Handle no_openmp_constructs clause. * gfortran.h (struct gfc_omp_assumptions): Add no_openmp_constructs. * openmp.cc (gfc_match_dupl_check): For free-form Fortran, avoid substring matching. (gfc_match_omp_clauses): Match no_openmp_constructs clause. Remove no longer needed 'needs_space', match 'order' followed by parenthesis instead of 'order' with parenthesis; reorder 'order' and 'ordering' clauses for free-form Fortran. (gfc_match_omp_assumes): Handle no_openmp_constructs clause. libgomp/ChangeLog: * libgomp.texi (OpenMP Implemenation Status): Mark no_openmp_constructs as implemented. gcc/testsuite/ChangeLog: * gfortran.dg/goacc/update-if_present-2.f90: Update dg-error. * gfortran.dg/gomp/order-8.f90: Likewise. * gfortran.dg/gomp/order-9.f90: Likewise. * c-c++-common/gomp/assume-5.c: New test. * gfortran.dg/gomp/assume-6.f90: New test.