diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/proc_decl_21.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/proc_decl_21.f90 | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/proc_decl_21.f90 b/gcc/testsuite/gfortran.dg/proc_decl_21.f90 new file mode 100644 index 000000000..4fd4020cb --- /dev/null +++ b/gcc/testsuite/gfortran.dg/proc_decl_21.f90 @@ -0,0 +1,32 @@ +! { dg-do compile } +! +! PR fortran/39414: PROCEDURE statement double declaration bug +! +! Discovered by Paul Thomas <pault@gcc.gnu.org> +! Modified by Janus Weil <janus@gcc.gnu.org> + + +! forbidden + +procedure(integer) :: a +integer :: a ! { dg-error "already has basic type of" } + +integer :: b +procedure(integer) :: b ! { dg-error "already has basic type of" } + +procedure(iabs) :: c +integer :: c ! { dg-error "may not have basic type of" } + +integer :: d +procedure(iabs) :: d ! { dg-error "already has basic type of" } + +! allowed + +integer :: e +procedure() :: e + +procedure() :: f +integer :: f + +end + |