aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorH.J. Lu <hongjiu.lu@intel.com>2007-10-04 15:39:11 +0000
committerH.J. Lu <hjl@gcc.gnu.org>2007-10-04 08:39:11 -0700
commitd17cd69f66c1c0cb10074efa10252deea1ad260e (patch)
treeb025b6cf25a01e095632feb6336c25948dc4a171 /gcc
parent34e366b39cde963eef58a75227bcbb655e4b1a20 (diff)
downloadgcc-d17cd69f66c1c0cb10074efa10252deea1ad260e.zip
gcc-d17cd69f66c1c0cb10074efa10252deea1ad260e.tar.gz
gcc-d17cd69f66c1c0cb10074efa10252deea1ad260e.tar.bz2
re PR fortran/33646 (Gcc 4.3 revision 128954 failed tonto in SPEC CPU 2006)
2007-10-04 H.J. Lu <hongjiu.lu@intel.com> PR fortran/33646 * gfortran.dg/pr33646.f90: New file. From-SVN: r129015
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/pr33646.f9059
2 files changed, 64 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 6e5dba0..3e92147 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2007-10-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR fortran/33646
+ * gfortran.dg/pr33646.f90: New file.
+
2007-10-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
PR fortran/33529
diff --git a/gcc/testsuite/gfortran.dg/pr33646.f90 b/gcc/testsuite/gfortran.dg/pr33646.f90
new file mode 100644
index 0000000..13f65cb
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/pr33646.f90
@@ -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" } }