diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/intrinsic_actual_3.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/intrinsic_actual_3.f90 | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_actual_3.f90 b/gcc/testsuite/gfortran.dg/intrinsic_actual_3.f90 new file mode 100644 index 000000000..c2dd07cda --- /dev/null +++ b/gcc/testsuite/gfortran.dg/intrinsic_actual_3.f90 @@ -0,0 +1,24 @@ +! { dg-do compile } +! Tests the fix for PR30237 in which alternate returns in intrinsic +! actual arglists were quietly ignored. +! +! Contributed by Brooks Moses <brooks@gcc.gnu.org> +! +program ar1 + interface random_seed + subroutine x (a, *) + integer a + end subroutine x + end interface random_seed + + real t1(2) + call cpu_time(*20) ! { dg-error "not permitted" } + call cpu_time(*20, t1(1)) ! { dg-error "Too many arguments" } +! This specific version is permitted by the generic interface. + call random_seed(i, *20) +! The new error gets overwritten but the diagnostic is clear enough. + call random_seed(i, *20, *30) ! { dg-error "not consistent" } + stop +20 write(*,*) t1 +30 stop +end |