diff options
author | Thomas Koenig <tkoenig@gcc.gnu.org> | 2007-07-09 22:34:43 +0000 |
---|---|---|
committer | Thomas Koenig <tkoenig@gcc.gnu.org> | 2007-07-09 22:34:43 +0000 |
commit | 18c492a9942639026fc27de5f1631f35b3d1b5ab (patch) | |
tree | d4f862e620d24da8c9d4a5c46013f07251cfcc85 /libgfortran/generated | |
parent | 924a20b64b21c176e07229e0d0c227d07b1040f9 (diff) | |
download | gcc-18c492a9942639026fc27de5f1631f35b3d1b5ab.zip gcc-18c492a9942639026fc27de5f1631f35b3d1b5ab.tar.gz gcc-18c492a9942639026fc27de5f1631f35b3d1b5ab.tar.bz2 |
re PR libfortran/32336 (matmul: flag runtime- instead of assertation error)
2007-07-09 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/32336
* m4/matmul.m4: When the dimension of b is incorrect,
raise a runtime error instead of a failed assertion.
* generated/matmul_i1.c: Regenerated.
* generated/matmul_i2.c: Regenerated.
* generated/matmul_i4.c: Regenerated.
* generated/matmul_i8.c: Regenerated.
* generated/matmul_i16.c: Regenerated.
* generated/matmul_r4.c: Regenerated.
* generated/matmul_r8.c: Regenerated.
* generated/matmul_r10.c: Regenerated.
* generated/matmul_r16.c: Regenerated.
2007-07-09 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/32336
* gfortran.dg/matmul_5.f90: New test case.
From-SVN: r126498
Diffstat (limited to 'libgfortran/generated')
-rw-r--r-- | libgfortran/generated/matmul_c10.c | 3 | ||||
-rw-r--r-- | libgfortran/generated/matmul_c16.c | 3 | ||||
-rw-r--r-- | libgfortran/generated/matmul_c4.c | 3 | ||||
-rw-r--r-- | libgfortran/generated/matmul_c8.c | 3 | ||||
-rw-r--r-- | libgfortran/generated/matmul_i1.c | 3 | ||||
-rw-r--r-- | libgfortran/generated/matmul_i16.c | 3 | ||||
-rw-r--r-- | libgfortran/generated/matmul_i2.c | 3 | ||||
-rw-r--r-- | libgfortran/generated/matmul_i4.c | 3 | ||||
-rw-r--r-- | libgfortran/generated/matmul_i8.c | 3 | ||||
-rw-r--r-- | libgfortran/generated/matmul_r10.c | 3 | ||||
-rw-r--r-- | libgfortran/generated/matmul_r16.c | 3 | ||||
-rw-r--r-- | libgfortran/generated/matmul_r4.c | 3 | ||||
-rw-r--r-- | libgfortran/generated/matmul_r8.c | 3 |
13 files changed, 26 insertions, 13 deletions
diff --git a/libgfortran/generated/matmul_c10.c b/libgfortran/generated/matmul_c10.c index 5e3b281..d7d4c65 100644 --- a/libgfortran/generated/matmul_c10.c +++ b/libgfortran/generated/matmul_c10.c @@ -169,7 +169,8 @@ matmul_c10 (gfc_array_c10 * const restrict retarray, xcount = a->dim[0].ubound + 1 - a->dim[0].lbound; } - assert(count == b->dim[0].ubound + 1 - b->dim[0].lbound); + if (count != b->dim[0].ubound + 1 - b->dim[0].lbound) + runtime_error ("dimension of array B incorrect in MATMUL intrinsic"); if (GFC_DESCRIPTOR_RANK (b) == 1) { diff --git a/libgfortran/generated/matmul_c16.c b/libgfortran/generated/matmul_c16.c index f730111..e9ad2d4 100644 --- a/libgfortran/generated/matmul_c16.c +++ b/libgfortran/generated/matmul_c16.c @@ -169,7 +169,8 @@ matmul_c16 (gfc_array_c16 * const restrict retarray, xcount = a->dim[0].ubound + 1 - a->dim[0].lbound; } - assert(count == b->dim[0].ubound + 1 - b->dim[0].lbound); + if (count != b->dim[0].ubound + 1 - b->dim[0].lbound) + runtime_error ("dimension of array B incorrect in MATMUL intrinsic"); if (GFC_DESCRIPTOR_RANK (b) == 1) { diff --git a/libgfortran/generated/matmul_c4.c b/libgfortran/generated/matmul_c4.c index f2984ab..753e535 100644 --- a/libgfortran/generated/matmul_c4.c +++ b/libgfortran/generated/matmul_c4.c @@ -169,7 +169,8 @@ matmul_c4 (gfc_array_c4 * const restrict retarray, xcount = a->dim[0].ubound + 1 - a->dim[0].lbound; } - assert(count == b->dim[0].ubound + 1 - b->dim[0].lbound); + if (count != b->dim[0].ubound + 1 - b->dim[0].lbound) + runtime_error ("dimension of array B incorrect in MATMUL intrinsic"); if (GFC_DESCRIPTOR_RANK (b) == 1) { diff --git a/libgfortran/generated/matmul_c8.c b/libgfortran/generated/matmul_c8.c index 65cc0a5..23aea6a 100644 --- a/libgfortran/generated/matmul_c8.c +++ b/libgfortran/generated/matmul_c8.c @@ -169,7 +169,8 @@ matmul_c8 (gfc_array_c8 * const restrict retarray, xcount = a->dim[0].ubound + 1 - a->dim[0].lbound; } - assert(count == b->dim[0].ubound + 1 - b->dim[0].lbound); + if (count != b->dim[0].ubound + 1 - b->dim[0].lbound) + runtime_error ("dimension of array B incorrect in MATMUL intrinsic"); if (GFC_DESCRIPTOR_RANK (b) == 1) { diff --git a/libgfortran/generated/matmul_i1.c b/libgfortran/generated/matmul_i1.c index ce98de1..ae03507 100644 --- a/libgfortran/generated/matmul_i1.c +++ b/libgfortran/generated/matmul_i1.c @@ -169,7 +169,8 @@ matmul_i1 (gfc_array_i1 * const restrict retarray, xcount = a->dim[0].ubound + 1 - a->dim[0].lbound; } - assert(count == b->dim[0].ubound + 1 - b->dim[0].lbound); + if (count != b->dim[0].ubound + 1 - b->dim[0].lbound) + runtime_error ("dimension of array B incorrect in MATMUL intrinsic"); if (GFC_DESCRIPTOR_RANK (b) == 1) { diff --git a/libgfortran/generated/matmul_i16.c b/libgfortran/generated/matmul_i16.c index a193669..38756dc 100644 --- a/libgfortran/generated/matmul_i16.c +++ b/libgfortran/generated/matmul_i16.c @@ -169,7 +169,8 @@ matmul_i16 (gfc_array_i16 * const restrict retarray, xcount = a->dim[0].ubound + 1 - a->dim[0].lbound; } - assert(count == b->dim[0].ubound + 1 - b->dim[0].lbound); + if (count != b->dim[0].ubound + 1 - b->dim[0].lbound) + runtime_error ("dimension of array B incorrect in MATMUL intrinsic"); if (GFC_DESCRIPTOR_RANK (b) == 1) { diff --git a/libgfortran/generated/matmul_i2.c b/libgfortran/generated/matmul_i2.c index b86839e..7287b6b 100644 --- a/libgfortran/generated/matmul_i2.c +++ b/libgfortran/generated/matmul_i2.c @@ -169,7 +169,8 @@ matmul_i2 (gfc_array_i2 * const restrict retarray, xcount = a->dim[0].ubound + 1 - a->dim[0].lbound; } - assert(count == b->dim[0].ubound + 1 - b->dim[0].lbound); + if (count != b->dim[0].ubound + 1 - b->dim[0].lbound) + runtime_error ("dimension of array B incorrect in MATMUL intrinsic"); if (GFC_DESCRIPTOR_RANK (b) == 1) { diff --git a/libgfortran/generated/matmul_i4.c b/libgfortran/generated/matmul_i4.c index 69b9b48..d5eed99 100644 --- a/libgfortran/generated/matmul_i4.c +++ b/libgfortran/generated/matmul_i4.c @@ -169,7 +169,8 @@ matmul_i4 (gfc_array_i4 * const restrict retarray, xcount = a->dim[0].ubound + 1 - a->dim[0].lbound; } - assert(count == b->dim[0].ubound + 1 - b->dim[0].lbound); + if (count != b->dim[0].ubound + 1 - b->dim[0].lbound) + runtime_error ("dimension of array B incorrect in MATMUL intrinsic"); if (GFC_DESCRIPTOR_RANK (b) == 1) { diff --git a/libgfortran/generated/matmul_i8.c b/libgfortran/generated/matmul_i8.c index 23a87a9..4ab5547 100644 --- a/libgfortran/generated/matmul_i8.c +++ b/libgfortran/generated/matmul_i8.c @@ -169,7 +169,8 @@ matmul_i8 (gfc_array_i8 * const restrict retarray, xcount = a->dim[0].ubound + 1 - a->dim[0].lbound; } - assert(count == b->dim[0].ubound + 1 - b->dim[0].lbound); + if (count != b->dim[0].ubound + 1 - b->dim[0].lbound) + runtime_error ("dimension of array B incorrect in MATMUL intrinsic"); if (GFC_DESCRIPTOR_RANK (b) == 1) { diff --git a/libgfortran/generated/matmul_r10.c b/libgfortran/generated/matmul_r10.c index e4dfd74..9f7fb4b 100644 --- a/libgfortran/generated/matmul_r10.c +++ b/libgfortran/generated/matmul_r10.c @@ -169,7 +169,8 @@ matmul_r10 (gfc_array_r10 * const restrict retarray, xcount = a->dim[0].ubound + 1 - a->dim[0].lbound; } - assert(count == b->dim[0].ubound + 1 - b->dim[0].lbound); + if (count != b->dim[0].ubound + 1 - b->dim[0].lbound) + runtime_error ("dimension of array B incorrect in MATMUL intrinsic"); if (GFC_DESCRIPTOR_RANK (b) == 1) { diff --git a/libgfortran/generated/matmul_r16.c b/libgfortran/generated/matmul_r16.c index ec760f2..6a8f220 100644 --- a/libgfortran/generated/matmul_r16.c +++ b/libgfortran/generated/matmul_r16.c @@ -169,7 +169,8 @@ matmul_r16 (gfc_array_r16 * const restrict retarray, xcount = a->dim[0].ubound + 1 - a->dim[0].lbound; } - assert(count == b->dim[0].ubound + 1 - b->dim[0].lbound); + if (count != b->dim[0].ubound + 1 - b->dim[0].lbound) + runtime_error ("dimension of array B incorrect in MATMUL intrinsic"); if (GFC_DESCRIPTOR_RANK (b) == 1) { diff --git a/libgfortran/generated/matmul_r4.c b/libgfortran/generated/matmul_r4.c index cf2f45f..e4a4580 100644 --- a/libgfortran/generated/matmul_r4.c +++ b/libgfortran/generated/matmul_r4.c @@ -169,7 +169,8 @@ matmul_r4 (gfc_array_r4 * const restrict retarray, xcount = a->dim[0].ubound + 1 - a->dim[0].lbound; } - assert(count == b->dim[0].ubound + 1 - b->dim[0].lbound); + if (count != b->dim[0].ubound + 1 - b->dim[0].lbound) + runtime_error ("dimension of array B incorrect in MATMUL intrinsic"); if (GFC_DESCRIPTOR_RANK (b) == 1) { diff --git a/libgfortran/generated/matmul_r8.c b/libgfortran/generated/matmul_r8.c index c746f6c..e823a75 100644 --- a/libgfortran/generated/matmul_r8.c +++ b/libgfortran/generated/matmul_r8.c @@ -169,7 +169,8 @@ matmul_r8 (gfc_array_r8 * const restrict retarray, xcount = a->dim[0].ubound + 1 - a->dim[0].lbound; } - assert(count == b->dim[0].ubound + 1 - b->dim[0].lbound); + if (count != b->dim[0].ubound + 1 - b->dim[0].lbound) + runtime_error ("dimension of array B incorrect in MATMUL intrinsic"); if (GFC_DESCRIPTOR_RANK (b) == 1) { |