aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven G. Kargl <kargl@gcc.gnu.org>2018-01-20 06:15:55 +0000
committerSteven G. Kargl <kargl@gcc.gnu.org>2018-01-20 06:15:55 +0000
commitf18fee823bb765b1efab04025d28fcf9315fb80b (patch)
tree8b92127a77734f6c08dbe5032baa77d4746239be
parent9e2c94c9e2f3f56106580450de65ec4163b5ba3f (diff)
downloadgcc-f18fee823bb765b1efab04025d28fcf9315fb80b.zip
gcc-f18fee823bb765b1efab04025d28fcf9315fb80b.tar.gz
gcc-f18fee823bb765b1efab04025d28fcf9315fb80b.tar.bz2
re PR fortran/83900 (ICE in gfc_simplify_matmul, at fortran/simplify.c:4593)
2018-01-19 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/83900 * simplify.c (gfc_simplify_matmul): Delete bogus assertion. 2018-01-19 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/83900 * gfortran.dg/matmul_17.f90: New test. From-SVN: r256912
-rw-r--r--gcc/fortran/ChangeLog5
-rw-r--r--gcc/fortran/simplify.c1
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_17.f909
4 files changed, 19 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 3fd3bf8..6eb0731 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,8 @@
+2018-01-19 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/83900
+ * simplify.c (gfc_simplify_matmul): Delete bogus assertion.
+
2018-01-17 Harald Anlauf <anlauf@gmx.de>
PR fortran/83864
diff --git a/gcc/fortran/simplify.c b/gcc/fortran/simplify.c
index b7c6b02..0c48e7c 100644
--- a/gcc/fortran/simplify.c
+++ b/gcc/fortran/simplify.c
@@ -4590,7 +4590,6 @@ gfc_simplify_matmul (gfc_expr *matrix_a, gfc_expr *matrix_b)
|| !is_constant_array_expr (matrix_b))
return NULL;
- gcc_assert (gfc_compare_types (&matrix_a->ts, &matrix_b->ts));
result = gfc_get_array_expr (matrix_a->ts.type,
matrix_a->ts.kind,
&matrix_a->where);
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index de96f4d..0f7baad 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,5 +1,10 @@
2018-01-19 Steven G. Kargl <kargl@gcc.gnu.org>
+ PR fortran/83900
+ * gfortran.dg/matmul_17.f90: New test.
+
+2018-01-19 Steven G. Kargl <kargl@gcc.gnu.org>
+
PR fortran/80768
* gfortran.dg/num_images_1.f90: New test that tests fix in r250734.
diff --git a/gcc/testsuite/gfortran.dg/matmul_17.f90 b/gcc/testsuite/gfortran.dg/matmul_17.f90
new file mode 100644
index 0000000..b21f02b
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/matmul_17.f90
@@ -0,0 +1,9 @@
+! { dg-do run }
+! PR Fortran/83900
+! Contributed by Gerhard Steinmetz <gscfq t t-online dot de>
+program p
+ integer, parameter :: a(3,2) = 1
+ real, parameter :: b(2,3) = 2
+ real, parameter :: c(3,3) = matmul(a, b)
+ if (any(c /= 4.)) call abort
+end