re PR fortran/91496 (!GCC$ directives error if mistyped or unknown)

2019-09-05  Harald Anlauf  <anlauf@gmx.de>

	PR fortran/91496
	* parse.c (parse_executable): Improve error messages for
	improperly placed pragmas not preceeding a loop.

	PR fortran/91496
	* gfortran.dg/directive_unroll_5.f90: Adjust error message.

From-SVN: r275442
This commit is contained in:
Harald Anlauf 2019-09-05 20:13:00 +00:00 committed by Harald Anlauf
parent 0e521c6461
commit 3c0f026505
4 changed files with 17 additions and 5 deletions

View file

@ -1,3 +1,9 @@
2019-09-05 Harald Anlauf <anlauf@gmx.de>
PR fortran/91496
* parse.c (parse_executable): Improve error messages for
improperly placed pragmas not preceeding a loop.
2019-09-05 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/91660

View file

@ -5541,16 +5541,17 @@ parse_executable (gfc_statement st)
}
if (directive_unroll != -1)
gfc_error ("%<GCC unroll%> directive does not commence a loop at %C");
gfc_error ("%<GCC unroll%> directive not at the start of a loop at %C");
if (directive_ivdep)
gfc_error ("%<GCC ivdep%> directive does not commence a loop at %C");
gfc_error ("%<GCC ivdep%> directive not at the start of a loop at %C");
if (directive_vector)
gfc_error ("%<GCC vector%> directive does not commence a loop at %C");
gfc_error ("%<GCC vector%> directive not at the start of a loop at %C");
if (directive_novector)
gfc_error ("%<GCC novector%> directive does not commence a loop at %C");
gfc_error ("%<GCC novector%> "
"directive not at the start of a loop at %C");
st = next_statement ();
}

View file

@ -1,3 +1,8 @@
2019-09-05 Harald Anlauf <anlauf@gmx.de>
PR fortran/91496
* gfortran.dg/directive_unroll_5.f90: Adjust error message.
2019-09-05 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/91660

View file

@ -31,7 +31,7 @@ subroutine wrong3(a, b, n)
integer :: a(n), b(n)
integer (kind=4) :: i
!GCC$ unroll 8
write (*,*) "wrong"! { dg-error "directive does not commence a loop" }
write (*,*) "wrong"! { dg-error "directive not at the start of a loop" }
DO i=n, 1, -1
call dummy2(a(i), b(i), i)
ENDDO