diff options
author | Paul Thomas <pault@gcc.gnu.org> | 2010-07-18 16:15:43 +0000 |
---|---|---|
committer | Paul Thomas <pault@gcc.gnu.org> | 2010-07-18 16:15:43 +0000 |
commit | 91e2faaf6624bd2f4ca173c2d9f033fbae913a6d (patch) | |
tree | 82f19d85ddd0a2a78905c71385b5350c02ba514b /gcc | |
parent | 18fcbc9a69973ca7aa173e2d8f8df95224a90c6c (diff) | |
download | gcc-91e2faaf6624bd2f4ca173c2d9f033fbae913a6d.zip gcc-91e2faaf6624bd2f4ca173c2d9f033fbae913a6d.tar.gz gcc-91e2faaf6624bd2f4ca173c2d9f033fbae913a6d.tar.bz2 |
re PR fortran/44353 (rejects legal fortran)
2010-07-18 Paul Thomas <pault@gcc.gnu.org>
PR fortran/44353
* match.c (gfc_match_iterator): Remove error that iterator
cannot be INTENT(IN).
2010-07-18 Paul Thomas <pault@gcc.gnu.org>
PR fortran/44353
* gfortran.dg/data_implied_do_2.f03 : New test.
From-SVN: r162286
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/match.c | 7 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/data_implied_do_2.f90 | 10 |
4 files changed, 21 insertions, 7 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 81722a1..48144b0 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2010-07-18 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/44353 + * match.c (gfc_match_iterator): Remove error that iterator + cannot be INTENT(IN). + 2010-07-17 Mikael Morin <mikael@gcc.gnu.org> * trans-array.c (gfc_free_ss): Don't free beyond ss rank. diff --git a/gcc/fortran/match.c b/gcc/fortran/match.c index 56e9d1d..3761261 100644 --- a/gcc/fortran/match.c +++ b/gcc/fortran/match.c @@ -978,13 +978,6 @@ 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 aaaed84..7cf7beb 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2010-07-18 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/44353 + * gfortran.dg/data_implied_do_2.f03 : New test. + 2010-07-18 Richard Sandiford <rdsandiford@googlemail.com> * gcc.target/mips/cache-1.c: Allow 0 instead of 0x0. diff --git a/gcc/testsuite/gfortran.dg/data_implied_do_2.f90 b/gcc/testsuite/gfortran.dg/data_implied_do_2.f90 new file mode 100644 index 0000000..e07690d --- /dev/null +++ b/gcc/testsuite/gfortran.dg/data_implied_do_2.f90 @@ -0,0 +1,10 @@ +! { dg-do compile } +! Tests the fix for PR44353 +! +! Contributed by Vittorio Zecca <zeccav@gmail.com> +! + subroutine sub(i) + intent(in) i + integer ii(10) + data (ii(i),i=1,10) /10*0/ ! failed here + end |