diff options
author | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2008-03-15 16:53:05 +0000 |
---|---|---|
committer | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2008-03-15 16:53:05 +0000 |
commit | 6b927641f37658c63ac5ade02e3e10d1a85c6463 (patch) | |
tree | 72ab152ba7e35bbf464fdf0ed1d1c6581df1cf09 | |
parent | db5cf0c77e6f746eed7e6370bbdc25e675b2628f (diff) | |
download | gcc-6b927641f37658c63ac5ade02e3e10d1a85c6463.zip gcc-6b927641f37658c63ac5ade02e3e10d1a85c6463.tar.gz gcc-6b927641f37658c63ac5ade02e3e10d1a85c6463.tar.bz2 |
re PR fortran/35184 (ICE in gfc_conv_array_index_offset)
2008-03-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR testsuite/35184
gfortran.dg/elemental_subroutine_6.f90: New test.
From-SVN: r133253
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/elemental_subroutine_6.f90 | 24 |
2 files changed, 29 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 48445d9..ec3196b 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2008-03-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR testsuite/35184 + gfortran.dg/elemental_subroutine_6.f90: New test. + 2008-03-15 Richard Guenther <rguenther@suse.de> * gcc.dg/pr23911.c: Adjust testcase. diff --git a/gcc/testsuite/gfortran.dg/elemental_subroutine_6.f90 b/gcc/testsuite/gfortran.dg/elemental_subroutine_6.f90 new file mode 100644 index 0000000..aab33f3 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/elemental_subroutine_6.f90 @@ -0,0 +1,24 @@ +! { dg-do compile } +! PR35184 ICE in gfc_conv_array_index_offset +MODULE foo + TYPE, PUBLIC :: bar + PRIVATE + REAL :: value + END TYPE bar + INTERFACE ASSIGNMENT (=) + MODULE PROCEDURE assign_bar + END INTERFACE ASSIGNMENT (=) +CONTAINS + ELEMENTAL SUBROUTINE assign_bar (to, from) + TYPE(bar), INTENT(OUT) :: to + TYPE(bar), INTENT(IN) :: from + to%value= from%value + END SUBROUTINE + SUBROUTINE my_sub (in, out) + IMPLICIT NONE + TYPE(bar), DIMENSION(:,:), POINTER :: in + TYPE(bar), DIMENSION(:,:), POINTER :: out + ALLOCATE( out(1:42, 1:42) ) + out(1, 1:42) = in(1, 1:42) + END SUBROUTINE +END MODULE foo
\ No newline at end of file |