From 5dc3986103d8908c802e940dea8f2def3a6989c2 Mon Sep 17 00:00:00 2001 From: Mark Eggleston Date: Thu, 4 Jun 2020 05:53:31 +0100 Subject: [PATCH] Fortran : ICE in maybe_canonicalize_comparison_1 PR92993 This issue has been fixed by PR94090. Add test case to ensure that this does not re-occur. 2020-06-08 Mark Eggleston gcc/testsuite/ PR fortran/92993 * gfortran.dg/pr92993.f90: New test. --- gcc/testsuite/gfortran.dg/pr92993.f90 | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 gcc/testsuite/gfortran.dg/pr92993.f90 diff --git a/gcc/testsuite/gfortran.dg/pr92993.f90 b/gcc/testsuite/gfortran.dg/pr92993.f90 new file mode 100644 index 0000000..b733553 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pr92993.f90 @@ -0,0 +1,21 @@ +! { dg-do compile } +! +! Original by G. Steinmetz + +function f(x) + integer, intent(in) :: x + integer :: f + f = x +end + +program p + interface + function f(x) ! { dg-error "POINTER attribute mismatch in function result" } + integer, intent(in) :: x + integer, pointer :: f + end + end interface + integer :: a(2) = [1, 2] + if ( a(2) .ne. f(a(2)) ) stop 1 +end + -- 2.7.4