OSDN Git Service

2008-01-27 Thomas Koenig <tkoenig@gcc.gnu.org>
authortkoenig <tkoenig@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 28 Jan 2008 19:02:47 +0000 (19:02 +0000)
committertkoenig <tkoenig@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 28 Jan 2008 19:02:47 +0000 (19:02 +0000)
PR libfortran/34980
* m4/shape.m4:  If return array is empty, return early.
* generated/shape_i4.c:  Regenerated.
* generated/shape_i8.c:  Regenerated.
* generated/shape_i16.c:  Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@131915 138bc75d-0d04-0410-961f-82ee72b054a4

libgfortran/ChangeLog
libgfortran/generated/shape_i16.c
libgfortran/generated/shape_i4.c
libgfortran/generated/shape_i8.c
libgfortran/m4/shape.m4

index a83ee24..b71eb30 100644 (file)
@@ -1,3 +1,11 @@
+2008-01-27  Thomas Koenig  <tkoenig@gcc.gnu.org>
+
+       PR libfortran/34980
+       * m4/shape.m4:  If return array is empty, return early.
+       * generated/shape_i4.c:  Regenerated.
+       * generated/shape_i8.c:  Regenerated.
+       * generated/shape_i16.c:  Regenerated.
+
 2008-01-26  Thomas Koenig  <tkoenig@gcc.gnu.org>
 
        PR libfofortran/34887
index a89c70a..77274d6 100644 (file)
@@ -48,6 +48,9 @@ shape_16 (gfc_array_i16 * const restrict ret,
 
   stride = ret->dim[0].stride;
 
+  if (ret->dim[0].ubound < ret->dim[0].lbound)
+    return;
+
   for (n = 0; n < GFC_DESCRIPTOR_RANK (array); n++)
     {
       ret->data[n * stride] =
index 4f6d62e..787ba54 100644 (file)
@@ -48,6 +48,9 @@ shape_4 (gfc_array_i4 * const restrict ret,
 
   stride = ret->dim[0].stride;
 
+  if (ret->dim[0].ubound < ret->dim[0].lbound)
+    return;
+
   for (n = 0; n < GFC_DESCRIPTOR_RANK (array); n++)
     {
       ret->data[n * stride] =
index a4a0ff0..f318b17 100644 (file)
@@ -48,6 +48,9 @@ shape_8 (gfc_array_i8 * const restrict ret,
 
   stride = ret->dim[0].stride;
 
+  if (ret->dim[0].ubound < ret->dim[0].lbound)
+    return;
+
   for (n = 0; n < GFC_DESCRIPTOR_RANK (array); n++)
     {
       ret->data[n * stride] =
index f9dbcf7..3bda0ad 100644 (file)
@@ -49,6 +49,9 @@ shape_'rtype_kind` ('rtype` * const restrict ret,
 
   stride = ret->dim[0].stride;
 
+  if (ret->dim[0].ubound < ret->dim[0].lbound)
+    return;
+
   for (n = 0; n < GFC_DESCRIPTOR_RANK (array); n++)
     {
       ret->data[n * stride] =