From 851a07e1689ff737cfd737707f5c01ce84f537fe Mon Sep 17 00:00:00 2001 From: Tobias Burnus Date: Sun, 23 Aug 2009 18:01:11 +0200 Subject: [PATCH] re PR fortran/40851 ([4.3/4.4/4.5] problem with deallocation of pointers) 2009-08-23 Tobias Burnus PR fortran/40851 * gfortran.dg/derived_init_3.f90: New test. From-SVN: r151034 --- gcc/testsuite/ChangeLog | 10 +++--- gcc/testsuite/gfortran.dg/derived_init_3.f90 | 34 ++++++++++++++++++++ 2 files changed, 39 insertions(+), 5 deletions(-) create mode 100644 gcc/testsuite/gfortran.dg/derived_init_3.f90 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 991ca592c551..c9b42c586580 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2009-08-23 Tobias Burnus + + PR fortran/40851 + * gfortran.dg/derived_init_3.f90: New test. + 2009-08-23 Uros Bizjak PR target/40718 @@ -16,11 +21,6 @@ PR fortran/40847 * gfortran.dg/transfer_resolve_1.f90 : New test. -2009-08-16 Tobias Burnus - - PR fortran/40851 - * gfortran.dg/derived_init_3.f90: New test. - 2009-08-14 Uros Bizjak Backport from mainline: diff --git a/gcc/testsuite/gfortran.dg/derived_init_3.f90 b/gcc/testsuite/gfortran.dg/derived_init_3.f90 new file mode 100644 index 000000000000..a1c4a0c7e0db --- /dev/null +++ b/gcc/testsuite/gfortran.dg/derived_init_3.f90 @@ -0,0 +1,34 @@ +! { dg-do run } +! +! PR fortran/40851 +! +! Make sure the an INTENT(OUT) dummy is not initialized +! when it is a pointer. +! +! Contributed by Juergen Reuter . +! +program main + + type :: string + character,dimension(:),allocatable :: chars + end type string + + type :: string_container + type(string) :: string + end type string_container + + type(string_container), target :: tgt + type(string_container), pointer :: ptr + + ptr => tgt + call set_ptr (ptr) + if (associated(ptr)) call abort() + +contains + + subroutine set_ptr (ptr) + type(string_container), pointer, intent(out) :: ptr + ptr => null () + end subroutine set_ptr + +end program main -- 2.47.2