From 44c9c01f8f2e8315090dcdcc544632719d840163 Mon Sep 17 00:00:00 2001 From: Paul Thomas Date: Mon, 19 Jul 2010 05:05:23 +0000 Subject: [PATCH] re PR fortran/44353 (rejects legal fortran) 2010-07-19 Paul Thomas PR fortran/44353 * match.c (gfc_match_iterator): Revert. 2010-07-19 Paul Thomas PR fortran/44353 * gfortran.dg/data_implied_do_2.f03 : Remove. From-SVN: r162294 --- gcc/fortran/ChangeLog | 5 +++++ gcc/fortran/match.c | 7 +++++++ gcc/testsuite/ChangeLog | 5 +++++ 3 files changed, 17 insertions(+) diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 48144b05806..a903c8a4acf 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2010-07-19 Paul Thomas + + PR fortran/44353 + * match.c (gfc_match_iterator): Reverted. + 2010-07-18 Paul Thomas PR fortran/44353 diff --git a/gcc/fortran/match.c b/gcc/fortran/match.c index 3761261fff0..56e9d1d515d 100644 --- a/gcc/fortran/match.c +++ b/gcc/fortran/match.c @@ -978,6 +978,13 @@ gfc_match_iterator (gfc_iterator *iter, int init_flag) goto cleanup; } + if (var->symtree->n.sym->attr.intent == INTENT_IN) + { + gfc_error ("Loop variable '%s' at %C cannot be INTENT(IN)", + var->symtree->n.sym->name); + goto cleanup; + } + gfc_match_char ('='); var->symtree->n.sym->attr.implied_index = 1; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 7cf7beba5af..73fb7b78465 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2010-07-19 Paul Thomas + + PR fortran/44353 + * gfortran.dg/data_implied_do_2.f03 : Removed. + 2010-07-18 Paul Thomas PR fortran/44353