diff options
author | Thomas Koenig <Thomas.Koenig@online.de> | 2007-02-20 21:50:20 +0000 |
---|---|---|
committer | Thomas Koenig <tkoenig@gcc.gnu.org> | 2007-02-20 21:50:20 +0000 |
commit | b241831b6d7dfd5107299ad17f8b5c8d5e8967c7 (patch) | |
tree | e5e24ada34da38d9342e277d3eae593191a9a0f3 /gcc | |
parent | 41e56bf7d66af98e2db00489deffb3e6178dd5b2 (diff) | |
download | gcc-b241831b6d7dfd5107299ad17f8b5c8d5e8967c7.zip gcc-b241831b6d7dfd5107299ad17f8b5c8d5e8967c7.tar.gz gcc-b241831b6d7dfd5107299ad17f8b5c8d5e8967c7.tar.bz2 |
re PR fortran/30869 ([4.1 only] Rejects pointer to integer as loop variable)
2007-02-20 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/30869
* match.c(gfc_match_iterator): Remove conflict between
loop variable and pointer.
2007-02-20 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/30869
* gfortran.dg/do_pointer_1.f90: New test.
From-SVN: r122176
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/match.c | 6 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/do_pointer_1.f90 | 9 |
4 files changed, 20 insertions, 6 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 13598b7..3597c36 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2007-02-20 Thomas Koenig <Thomas.Koenig@online.de> + + PR fortran/30869 + * match.c(gfc_match_iterator): Remove conflict between + loop variable and pointer. + 2007-02-20 Tobias Burnus <burnus@net-b.de> PR fortran/30522 diff --git a/gcc/fortran/match.c b/gcc/fortran/match.c index 012f549..9d199e2 100644 --- a/gcc/fortran/match.c +++ b/gcc/fortran/match.c @@ -534,12 +534,6 @@ gfc_match_iterator (gfc_iterator *iter, int init_flag) goto cleanup; } - if (var->symtree->n.sym->attr.pointer) - { - gfc_error ("Loop variable at %C cannot have the POINTER attribute"); - goto cleanup; - } - m = init_flag ? gfc_match_init_expr (&e1) : gfc_match_expr (&e1); if (m == MATCH_NO) goto syntax; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index c62ef00..d387079 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2007-02-20 Thomas Koenig <Thomas.Koenig@online.de> + + PR fortran/30869 + * gfortran.dg/do_pointer_1.f90: New test. + 2007-02-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> * gcc.dg/torture/builtin-nonneg-1.c: Add checks for scalb, scalbn diff --git a/gcc/testsuite/gfortran.dg/do_pointer_1.f90 b/gcc/testsuite/gfortran.dg/do_pointer_1.f90 new file mode 100644 index 0000000..548177a --- /dev/null +++ b/gcc/testsuite/gfortran.dg/do_pointer_1.f90 @@ -0,0 +1,9 @@ +! { dg-do compile } +! PR 30869 - pointer loop variables were wrongly rejected. +program main + integer, pointer :: i + allocate (i) + do i=1,10 + end do + deallocate (i) +end program main |