aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorPaul Thomas <pault@gcc.gnu.org>2011-02-20 17:00:47 +0000
committerPaul Thomas <pault@gcc.gnu.org>2011-02-20 17:00:47 +0000
commit6e549dd2e521e4deab694808be9d349aea892418 (patch)
tree2ec77446d4b59e911c8c7a9191d6039cc2fcefee /gcc/testsuite
parent0101807c0345c2e0a714e093b02fc6d694c3cb28 (diff)
downloadgcc-6e549dd2e521e4deab694808be9d349aea892418.zip
gcc-6e549dd2e521e4deab694808be9d349aea892418.tar.gz
gcc-6e549dd2e521e4deab694808be9d349aea892418.tar.bz2
re PR fortran/46818 (ICE on pointer assignment (-fwhole-file))
2011-02-20 Paul Thomas <pault@gcc.gnu.org> PR fortran/46818 * gfortran.dg/whole_file_30.f90 : New test. * gfortran.dg/whole_file_31.f90 : New test. From-SVN: r170338
Diffstat (limited to 'gcc/testsuite')
-rw-r--r--gcc/testsuite/ChangeLog6
-rw-r--r--gcc/testsuite/gfortran.dg/whole_file_30.f9015
-rw-r--r--gcc/testsuite/gfortran.dg/whole_file_31.f9021
3 files changed, 42 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 077200e..51f26e9 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,5 +1,11 @@
2011-02-20 Paul Thomas <pault@gcc.gnu.org>
+ PR fortran/46818
+ * gfortran.dg/whole_file_30.f90 : New test.
+ * gfortran.dg/whole_file_31.f90 : New test.
+
+2011-02-20 Paul Thomas <pault@gcc.gnu.org>
+
PR fortran/45077
PR fortran/44945
* gfortran.dg/whole_file_28.f90 : New test.
diff --git a/gcc/testsuite/gfortran.dg/whole_file_30.f90 b/gcc/testsuite/gfortran.dg/whole_file_30.f90
new file mode 100644
index 0000000..813ca06
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/whole_file_30.f90
@@ -0,0 +1,15 @@
+! { dg-do compile }
+! Test the fix for the problem described in PR46818.
+! Note that the module file is kept for whole_file_31.f90
+!
+! Contributed by Martien Hulsen <m.a.hulsen@tue.nl>
+! and reduced by Tobias Burnus <burnus@gcc.gnu.org>
+!
+! ============== system_defs.f90 =============
+module system_defs_m
+ type sysvector_t
+ integer :: probnr = 0
+ real, allocatable, dimension(:) :: u
+ end type sysvector_t
+end module system_defs_m
+! DO NOT CLEAN UP THE MODULE FILE - whole_file_31.f90 does it.
diff --git a/gcc/testsuite/gfortran.dg/whole_file_31.f90 b/gcc/testsuite/gfortran.dg/whole_file_31.f90
new file mode 100644
index 0000000..7ef0b9f
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/whole_file_31.f90
@@ -0,0 +1,21 @@
+! { dg-do compile }
+! Test the fix for the problem described in PR46818.
+! Note that the module file from whole_file_30.f90, 'system_defs_m',
+! is needed for this test.
+!
+! Contributed by Martien Hulsen <m.a.hulsen@tue.nl>
+! and reduced by Tobias Burnus <burnus@gcc.gnu.org>
+!
+! ========== t.f90 ===========================
+module convecreac_m
+ use system_defs_m
+ type(sysvector_t), pointer :: solution
+end module convecreac_m
+
+program t
+ use convecreac_m
+ implicit none
+ type(sysvector_t), target :: sol
+ solution => sol
+end program t
+! { dg-final { cleanup-modules "system_defs_m convecreac_m" } }