aboutsummaryrefslogtreecommitdiff
path: root/libgfortran
diff options
context:
space:
mode:
authordomob <domob@138bc75d-0d04-0410-961f-82ee72b054a4>2009-01-21 13:34:55 +0000
committerdomob <domob@138bc75d-0d04-0410-961f-82ee72b054a4>2009-01-21 13:34:55 +0000
commitedfaa9e32e6d661b3a582467caa17295d7f75288 (patch)
treeb1031584e4fe3d17c0b6289ff1e3eb0c4072334d /libgfortran
parent6e93a4c8a63318c29b830420bfeb61c65a9c5904 (diff)
2009-01-21 Daniel Kraft <d@domob.eu>
* trans-stmt.c (gfc_conv_elemental_dependencies): Cleaned up comment. 2009-01-21 Daniel Kraft <d@domob.eu> PR fortran/38887 * runtime/in_unpack_generic.c (internal_unpack): Return instead of abort when called with empty array. * m4/in_unpack.m4: Ditto. * generated/in_unpack_i1.c: Regenerated. * generated/in_unpack_i2.c: Regenerated. * generated/in_unpack_i4.c: Regenerated. * generated/in_unpack_i8.c: Regenerated. * generated/in_unpack_i16.c: Regenerated. * generated/in_unpack_r4.c: Regenerated. * generated/in_unpack_r8.c: Regenerated. * generated/in_unpack_r10.c: Regenerated. * generated/in_unpack_r16.c: Regenerated. * generated/in_unpack_c4.c: Regenerated. * generated/in_unpack_c8.c: Regenerated. * generated/in_unpack_c10.c: Regenerated. * generated/in_unpack_c16.c: Regenerated. 2009-01-21 Daniel Kraft <d@domob.eu> PR fortran/38887 * gfortran.dg/mvbits_5.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@143541 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgfortran')
-rw-r--r--libgfortran/ChangeLog20
-rw-r--r--libgfortran/generated/in_unpack_c10.c6
-rw-r--r--libgfortran/generated/in_unpack_c16.c6
-rw-r--r--libgfortran/generated/in_unpack_c4.c6
-rw-r--r--libgfortran/generated/in_unpack_c8.c6
-rw-r--r--libgfortran/generated/in_unpack_i1.c6
-rw-r--r--libgfortran/generated/in_unpack_i16.c6
-rw-r--r--libgfortran/generated/in_unpack_i2.c6
-rw-r--r--libgfortran/generated/in_unpack_i4.c6
-rw-r--r--libgfortran/generated/in_unpack_i8.c6
-rw-r--r--libgfortran/generated/in_unpack_r10.c6
-rw-r--r--libgfortran/generated/in_unpack_r16.c6
-rw-r--r--libgfortran/generated/in_unpack_r4.c6
-rw-r--r--libgfortran/generated/in_unpack_r8.c6
-rw-r--r--libgfortran/m4/in_unpack.m46
-rw-r--r--libgfortran/runtime/in_unpack_generic.c6
16 files changed, 65 insertions, 45 deletions
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 7b1241d5fee..96fd675bf0e 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,23 @@
+2009-01-21 Daniel Kraft <d@domob.eu>
+
+ PR fortran/38887
+ * runtime/in_unpack_generic.c (internal_unpack): Return instead of
+ abort when called with empty array.
+ * m4/in_unpack.m4: Ditto.
+ * generated/in_unpack_i1.c: Regenerated.
+ * generated/in_unpack_i2.c: Regenerated.
+ * generated/in_unpack_i4.c: Regenerated.
+ * generated/in_unpack_i8.c: Regenerated.
+ * generated/in_unpack_i16.c: Regenerated.
+ * generated/in_unpack_r4.c: Regenerated.
+ * generated/in_unpack_r8.c: Regenerated.
+ * generated/in_unpack_r10.c: Regenerated.
+ * generated/in_unpack_r16.c: Regenerated.
+ * generated/in_unpack_c4.c: Regenerated.
+ * generated/in_unpack_c8.c: Regenerated.
+ * generated/in_unpack_c10.c: Regenerated.
+ * generated/in_unpack_c16.c: Regenerated.
+
2009-01-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/38772
diff --git a/libgfortran/generated/in_unpack_c10.c b/libgfortran/generated/in_unpack_c10.c
index 2d971bf14cc..930cfae6dca 100644
--- a/libgfortran/generated/in_unpack_c10.c
+++ b/libgfortran/generated/in_unpack_c10.c
@@ -60,12 +60,12 @@ internal_unpack_c10 (gfc_array_c10 * d, const GFC_COMPLEX_10 * src)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
if (dsize != 0)
diff --git a/libgfortran/generated/in_unpack_c16.c b/libgfortran/generated/in_unpack_c16.c
index f09b0b44faf..45927b831f0 100644
--- a/libgfortran/generated/in_unpack_c16.c
+++ b/libgfortran/generated/in_unpack_c16.c
@@ -60,12 +60,12 @@ internal_unpack_c16 (gfc_array_c16 * d, const GFC_COMPLEX_16 * src)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
if (dsize != 0)
diff --git a/libgfortran/generated/in_unpack_c4.c b/libgfortran/generated/in_unpack_c4.c
index ed77a700ebf..1a7d707735e 100644
--- a/libgfortran/generated/in_unpack_c4.c
+++ b/libgfortran/generated/in_unpack_c4.c
@@ -60,12 +60,12 @@ internal_unpack_c4 (gfc_array_c4 * d, const GFC_COMPLEX_4 * src)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
if (dsize != 0)
diff --git a/libgfortran/generated/in_unpack_c8.c b/libgfortran/generated/in_unpack_c8.c
index e1fada33802..5dbfca0a670 100644
--- a/libgfortran/generated/in_unpack_c8.c
+++ b/libgfortran/generated/in_unpack_c8.c
@@ -60,12 +60,12 @@ internal_unpack_c8 (gfc_array_c8 * d, const GFC_COMPLEX_8 * src)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
if (dsize != 0)
diff --git a/libgfortran/generated/in_unpack_i1.c b/libgfortran/generated/in_unpack_i1.c
index 0e7ab116125..ccaa0d2cb06 100644
--- a/libgfortran/generated/in_unpack_i1.c
+++ b/libgfortran/generated/in_unpack_i1.c
@@ -60,12 +60,12 @@ internal_unpack_1 (gfc_array_i1 * d, const GFC_INTEGER_1 * src)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
if (dsize != 0)
diff --git a/libgfortran/generated/in_unpack_i16.c b/libgfortran/generated/in_unpack_i16.c
index 36584859dbe..8d0ddf56fdc 100644
--- a/libgfortran/generated/in_unpack_i16.c
+++ b/libgfortran/generated/in_unpack_i16.c
@@ -60,12 +60,12 @@ internal_unpack_16 (gfc_array_i16 * d, const GFC_INTEGER_16 * src)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
if (dsize != 0)
diff --git a/libgfortran/generated/in_unpack_i2.c b/libgfortran/generated/in_unpack_i2.c
index 246c3f3999d..cb5048fd53d 100644
--- a/libgfortran/generated/in_unpack_i2.c
+++ b/libgfortran/generated/in_unpack_i2.c
@@ -60,12 +60,12 @@ internal_unpack_2 (gfc_array_i2 * d, const GFC_INTEGER_2 * src)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
if (dsize != 0)
diff --git a/libgfortran/generated/in_unpack_i4.c b/libgfortran/generated/in_unpack_i4.c
index d0c0f15640e..1295644c418 100644
--- a/libgfortran/generated/in_unpack_i4.c
+++ b/libgfortran/generated/in_unpack_i4.c
@@ -60,12 +60,12 @@ internal_unpack_4 (gfc_array_i4 * d, const GFC_INTEGER_4 * src)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
if (dsize != 0)
diff --git a/libgfortran/generated/in_unpack_i8.c b/libgfortran/generated/in_unpack_i8.c
index 5f2975e7432..a228ded244c 100644
--- a/libgfortran/generated/in_unpack_i8.c
+++ b/libgfortran/generated/in_unpack_i8.c
@@ -60,12 +60,12 @@ internal_unpack_8 (gfc_array_i8 * d, const GFC_INTEGER_8 * src)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
if (dsize != 0)
diff --git a/libgfortran/generated/in_unpack_r10.c b/libgfortran/generated/in_unpack_r10.c
index 66ebe82663d..5099b9a4bb9 100644
--- a/libgfortran/generated/in_unpack_r10.c
+++ b/libgfortran/generated/in_unpack_r10.c
@@ -60,12 +60,12 @@ internal_unpack_r10 (gfc_array_r10 * d, const GFC_REAL_10 * src)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
if (dsize != 0)
diff --git a/libgfortran/generated/in_unpack_r16.c b/libgfortran/generated/in_unpack_r16.c
index 722dee76af5..d2e557909cb 100644
--- a/libgfortran/generated/in_unpack_r16.c
+++ b/libgfortran/generated/in_unpack_r16.c
@@ -60,12 +60,12 @@ internal_unpack_r16 (gfc_array_r16 * d, const GFC_REAL_16 * src)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
if (dsize != 0)
diff --git a/libgfortran/generated/in_unpack_r4.c b/libgfortran/generated/in_unpack_r4.c
index 65bdb078c96..2c374592129 100644
--- a/libgfortran/generated/in_unpack_r4.c
+++ b/libgfortran/generated/in_unpack_r4.c
@@ -60,12 +60,12 @@ internal_unpack_r4 (gfc_array_r4 * d, const GFC_REAL_4 * src)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
if (dsize != 0)
diff --git a/libgfortran/generated/in_unpack_r8.c b/libgfortran/generated/in_unpack_r8.c
index 70c11b5f54f..e0e91e909da 100644
--- a/libgfortran/generated/in_unpack_r8.c
+++ b/libgfortran/generated/in_unpack_r8.c
@@ -60,12 +60,12 @@ internal_unpack_r8 (gfc_array_r8 * d, const GFC_REAL_8 * src)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
if (dsize != 0)
diff --git a/libgfortran/m4/in_unpack.m4 b/libgfortran/m4/in_unpack.m4
index 5c5b5b12a1b..a2a92d0e4e4 100644
--- a/libgfortran/m4/in_unpack.m4
+++ b/libgfortran/m4/in_unpack.m4
@@ -63,12 +63,12 @@ internal_unpack_'rtype_ccode` ('rtype` * d, const 'rtype_name` * src)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
if (dsize != 0)
diff --git a/libgfortran/runtime/in_unpack_generic.c b/libgfortran/runtime/in_unpack_generic.c
index 81d1f0485ec..b15f4dd9903 100644
--- a/libgfortran/runtime/in_unpack_generic.c
+++ b/libgfortran/runtime/in_unpack_generic.c
@@ -178,12 +178,12 @@ internal_unpack (gfc_array_char * d, const void * s)
stride[n] = d->dim[n].stride;
extent[n] = d->dim[n].ubound + 1 - d->dim[n].lbound;
if (extent[n] <= 0)
- abort ();
+ return;
if (dsize == stride[n])
- dsize *= extent[n];
+ dsize *= extent[n];
else
- dsize = 0;
+ dsize = 0;
}
src = s;