summaryrefslogtreecommitdiffstats
path: root/gcc/fortran
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2010-09-08 16:46:13 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2010-09-08 16:46:13 +0000
commitd6ce1997138e6d64599cd7cf9c4eeec3bbf9c6be (patch)
tree9f539fa3028978f2cba42b6226bfe201324aebf4 /gcc/fortran
parentf61be63189d65d477d7721abf704dadaf4ff3975 (diff)
downloadppe42-gcc-d6ce1997138e6d64599cd7cf9c4eeec3bbf9c6be.tar.gz
ppe42-gcc-d6ce1997138e6d64599cd7cf9c4eeec3bbf9c6be.zip
PR fortran/45595
* openmp.c (resolve_omp_do): Report not enough do loops for collapse even if block->next is NULL. * gfortran.dg/gomp/pr45595.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164004 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fortran')
-rw-r--r--gcc/fortran/ChangeLog6
-rw-r--r--gcc/fortran/openmp.c3
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 2215eb850de..1f38eec0542 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,9 @@
+2010-09-08 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/45595
+ * openmp.c (resolve_omp_do): Report not enough do loops for
+ collapse even if block->next is NULL.
+
2010-09-07 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45576
diff --git a/gcc/fortran/openmp.c b/gcc/fortran/openmp.c
index 0e25bf48cb3..6e8182118ce 100644
--- a/gcc/fortran/openmp.c
+++ b/gcc/fortran/openmp.c
@@ -1516,7 +1516,8 @@ resolve_omp_do (gfc_code *code)
break;
}
do_code = do_code->next;
- if (do_code->op != EXEC_DO && do_code->op != EXEC_DO_WHILE)
+ if (do_code == NULL
+ || (do_code->op != EXEC_DO && do_code->op != EXEC_DO_WHILE))
{
gfc_error ("not enough DO loops for collapsed !$OMP DO at %L",
&code->loc);
OpenPOWER on IntegriCloud