On Thu, Nov 10, 2016 at 06:46:46PM +0800, Chung-Lin Tang wrote: > > Thanks, > Chung-Lin > > 2016-XX-XX Cesar Philippidis <ce...@codesourcery.com> > > fortran/ > * openmp.c (resolve_oacc_positive_int_expr): Promote the warning > to an error. > (resolve_oacc_loop_blocks): Use integer zero to represent the '*' > tile argument. > (resolve_omp_clauses): Error on directives containing both tile > and collapse clauses. > * trans-openmp.c (gfc_trans_omp_do): Lower tiled loops like > collapsed loops. > > > gcc/testsuite/ > * gfortran.dg/goacc/loop-2.f95: Change expected tile clause > warnings to errors. > * gfortran.dg/goacc/loop-5.f95: Likewise. > * gfortran.dg/goacc/sie.f95: Likewise. > * gfortran.dg/goacc/tile-1.f90: New test. > * gfortran.dg/goacc/tile-2.f90: New test > * gfortran.dg/goacc/tile-lowering.f95: New test.
Again, 8 spaces in ChangeLog. Missing full stop after New test > --- fortran/openmp.c (revision 241809) > +++ fortran/openmp.c (working copy) > @@ -3024,8 +3024,8 @@ resolve_oacc_positive_int_expr (gfc_expr *expr, co > resolve_oacc_scalar_int_expr (expr, clause); > if (expr->expr_type == EXPR_CONSTANT && expr->ts.type == BT_INTEGER > && mpz_sgn(expr->value.integer) <= 0) > - gfc_warning (0, "INTEGER expression of %s clause at %L must be positive", > - clause, &expr->where); > + gfc_error ("INTEGER expression of %s clause at %L must be positive", > + clause, &expr->where); > } This can't be against current trunk. The current routine is shared with OpenMP and gfc_error is undesirable there. > @@ -3859,6 +3859,8 @@ resolve_omp_clauses (gfc_code *code, gfc_omp_claus > if (omp_clauses->wait_list) > for (el = omp_clauses->wait_list; el; el = el->next) > resolve_oacc_scalar_int_expr (el->expr, "WAIT"); > + if (omp_clauses->collapse && omp_clauses->tile_list) > + gfc_error ("Incompatible use of TILE and COLLAPSE at %L", &code->loc); Shouldn't you in that case for error recovery clear collapse (or tile_list)? Jakub