diff options
author | H.J. Lu <hongjiu.lu@intel.com> | 2006-02-05 19:52:35 +0000 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2006-02-05 11:52:35 -0800 |
commit | c235e3884fbbf1a657fb2b2bfe1defa0b9fd8dd9 (patch) | |
tree | 9ec354cb4a9a4faea6ede2dd9c8c64a5f6538bee /gcc | |
parent | c2a11bfcc0ddc8c7faa7a823e0fb1e139771b027 (diff) | |
download | gcc-c235e3884fbbf1a657fb2b2bfe1defa0b9fd8dd9.zip gcc-c235e3884fbbf1a657fb2b2bfe1defa0b9fd8dd9.tar.gz gcc-c235e3884fbbf1a657fb2b2bfe1defa0b9fd8dd9.tar.bz2 |
re PR fortran/26041 ([4.1]: FORTRAN compiler won't compile the valid code)
2006-02-05 H.J. Lu <hongjiu.lu@intel.com>
PR fortran/26041
PR fortran/26064
* gfortran.dg/sibling_dummy_procedure_1.f90: New file.
* gfortran.dg/sibling_dummy_procedure_2.f90: Likewise.
* gfortran.dg/sibling_dummy_procedure_3.f90: Likewise.
From-SVN: r110618
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/sibling_dummy_procedure_1.f90 | 32 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/sibling_dummy_procedure_2.f90 | 32 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/sibling_dummy_procedure_3.f90 | 18 |
4 files changed, 90 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index fc1aa79..a654677 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2006-02-05 H.J. Lu <hongjiu.lu@intel.com> + + PR fortran/26041 + PR fortran/26064 + * gfortran.dg/sibling_dummy_procedure_1.f90: New file. + * gfortran.dg/sibling_dummy_procedure_2.f90: Likewise. + * gfortran.dg/sibling_dummy_procedure_3.f90: Likewise. + 2006-02-05 Jakub Jelinek <jakub@redhat.com> * gcc.dg/gomp/pr25990.c: Use __SIZE_TYPE__ instead of unsigned int diff --git a/gcc/testsuite/gfortran.dg/sibling_dummy_procedure_1.f90 b/gcc/testsuite/gfortran.dg/sibling_dummy_procedure_1.f90 new file mode 100644 index 0000000..f18f291 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/sibling_dummy_procedure_1.f90 @@ -0,0 +1,32 @@ +! { dg-do compile } +! This checks the fix for PR 26041. +! +! Contributed by H.J. Lu <hongjiu.lu@intel.com> +module foo + public bar_ + interface bar_ + module procedure bar + end interface + public xxx_ + interface xxx_ + module procedure xxx + end interface +contains + subroutine bar(self, z) + interface + function self(z) result(res) + real z + real(kind=kind(1.0d0)) :: res + end function + end interface + end subroutine + subroutine xxx(self,z) + interface + function self(z) result(res) + real z + real(kind=kind(1.0d0)) :: res + end function + end interface + call bar(self, z) + end subroutine +end diff --git a/gcc/testsuite/gfortran.dg/sibling_dummy_procedure_2.f90 b/gcc/testsuite/gfortran.dg/sibling_dummy_procedure_2.f90 new file mode 100644 index 0000000..031a537 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/sibling_dummy_procedure_2.f90 @@ -0,0 +1,32 @@ +! { dg-do compile } +! This checks the fix for PR 26041. +! +! Contributed by H.J. Lu <hongjiu.lu@intel.com> +module foo + public bar_ + interface bar_ + module procedure bar + end interface + public xxx_ + interface xxx_ + module procedure xxx + end interface +contains + subroutine bar(self, z) + interface + function self(z) result(res) + real z + real(kind=kind(1.0d0)) :: res + end function + end interface + end subroutine + subroutine xxx(self,z) + interface + function self(z) result(res) + real z + real(kind=kind(1.0d0)) :: res + end function + end interface + call bar_(self, z) + end subroutine +end diff --git a/gcc/testsuite/gfortran.dg/sibling_dummy_procedure_3.f90 b/gcc/testsuite/gfortran.dg/sibling_dummy_procedure_3.f90 new file mode 100644 index 0000000..5f1391e --- /dev/null +++ b/gcc/testsuite/gfortran.dg/sibling_dummy_procedure_3.f90 @@ -0,0 +1,18 @@ +! { dg-do compile } +! This checks the fix for PR 26064 +! +! Contributed by Sven Buijssen <sven.buijssen@math.uni-dortmund.de> +module ice + implicit none + contains + + subroutine foo() + contains + + subroutine bar(baz) + integer, optional :: baz + if (present(baz)) then + endif + end subroutine bar + end subroutine foo +end module |