summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/intrinsic_size_4.f90
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gfortran.dg/intrinsic_size_4.f90')
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_size_4.f9018
1 files changed, 18 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_size_4.f90 b/gcc/testsuite/gfortran.dg/intrinsic_size_4.f90
new file mode 100644
index 000000000..6d8e1c0b5
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/intrinsic_size_4.f90
@@ -0,0 +1,18 @@
+! { dg-do compile }
+! Test the fix for PR55362; the error below was missed and an ICE ensued.
+!
+! ! Contributed by Dominique d'Humieres <dominiq@lps.ens.fr>
+!
+program ice_test
+ implicit none
+ write(*,*) 'message: ', &
+ size(Error_Msg),Error_Msg() ! { dg-error "must be an array" }
+ write(*,*) 'message: ', &
+ size(Error_Msg ()),Error_Msg() ! OK of course
+contains
+ function Error_Msg() result(ErrorMsg)
+ character, dimension(:), pointer :: ErrorMsg
+ character, dimension(1), target :: str = '!'
+ ErrorMsg => str
+ end function Error_Msg
+end program ice_test