]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/fortran/array.cc
re PR fortran/91496 (!GCC$ directives error if mistyped or unknown)
authorHarald Anlauf <anlauf@gmx.de>
Tue, 27 Aug 2019 19:16:33 +0000 (19:16 +0000)
committerHarald Anlauf <anlauf@gcc.gnu.org>
Tue, 27 Aug 2019 19:16:33 +0000 (19:16 +0000)
commit2bd86b95f76315f102c52a81453ef375c97e8f1b
treeb7b05454a14ad73627667f20119d26edd65542b7
parent340d34bf76dd9455ab07ea849168bf2503d5edef
re PR fortran/91496 (!GCC$ directives error if mistyped or unknown)

2019-08-27  Harald Anlauf  <anlauf@gmx.de>

PR fortran/91496
* gfortran.h: Extend struct gfc_iterator for loop annotations.
* array.c (gfc_copy_iterator): Copy loop annotations by IVDEP,
VECTOR, and NOVECTOR pragmas.
* decl.c (gfc_match_gcc_ivdep, gfc_match_gcc_vector)
(gfc_match_gcc_novector): New matcher functions handling IVDEP,
VECTOR, and NOVECTOR pragmas.
* match.h: Declare prototypes of matcher functions handling IVDEP,
VECTOR, and NOVECTOR pragmas.
* parse.c (decode_gcc_attribute, parse_do_block)
(parse_executable): Decode IVDEP, VECTOR, and NOVECTOR pragmas;
emit warning for unrecognized pragmas instead of error.
* trans-stmt.c (gfc_trans_simple_do, gfc_trans_do): Add code to
emit annotations for IVDEP, VECTOR, and NOVECTOR pragmas.
* gfortran.texi: Document IVDEP, VECTOR, and NOVECTOR pragmas.

PR fortran/91496
* gfortran.dg/pr91496.f90: New testcase.

From-SVN: r274966
gcc/fortran/ChangeLog
gcc/fortran/array.c
gcc/fortran/decl.c
gcc/fortran/gfortran.h
gcc/fortran/gfortran.texi
gcc/fortran/match.h
gcc/fortran/parse.c
gcc/fortran/trans-stmt.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/pr91496.f90 [new file with mode: 0644]