This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
PATCH: PR fortran/33646: [4.3 Regression] Gcc 4.3 revision 128954 failed tonto in SPEC CPU 2006
- From: "H.J. Lu" <hjl at lucon dot org>
- To: gcc-patches at gcc dot gnu dot org
- Cc: fortran at gcc dot gnu dot org
- Date: Thu, 4 Oct 2007 06:57:35 -0700
- Subject: PATCH: PR fortran/33646: [4.3 Regression] Gcc 4.3 revision 128954 failed tonto in SPEC CPU 2006
This patch adds a testcase for PR fortran/33646. OK to install?
H.J.
----
2007-10-04 H.J. Lu <hongjiu.lu@intel.com>
PR fortran/33646
* gfortran.dg/pr33646.f90: New file.
--- gcc/testsuite/gfortran.dg/pr33646.f90.pr33646 2007-10-04 06:51:58.000000000 -0700
+++ gcc/testsuite/gfortran.dg/pr33646.f90 2007-10-04 06:51:34.000000000 -0700
@@ -0,0 +1,59 @@
+! { dg-do compile }
+! PR fortran/33646
+!
+!
+
+module BAR_MODULE
+ implicit none
+ private
+ public create_
+ interface create_
+ module procedure create
+ end interface
+ type system_type
+ integer(kind=kind(1)) :: max_memory_used
+ end type
+
+contains
+
+ subroutine create(self)
+ type(system_type) :: self
+ pointer :: self
+ allocate(self)
+ end subroutine
+
+end
+
+module FOO_MODULE
+ use BAR_MODULE
+ implicit none
+ private
+ public create_
+ interface create_
+ module procedure create
+ end interface
+
+ public create_copy_
+ interface create_copy_
+ module procedure create_copy
+ end interface
+contains
+
+ subroutine create(self)
+ character(*) :: self
+ pointer :: self
+ nullify(self)
+ allocate(self)
+
+ self = " "
+ end subroutine
+
+ subroutine create_copy(self,s)
+ character(*) :: self
+ pointer :: self
+ character(*) :: s
+ call create_(self)
+ end subroutine
+end
+
+! { dg-final { cleanup-modules "BAR_MODULE FOO_MODULE" } }