summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/optional_dim_2.f90
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gfortran.dg/optional_dim_2.f90')
-rw-r--r--gcc/testsuite/gfortran.dg/optional_dim_2.f9024
1 files changed, 24 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/optional_dim_2.f90 b/gcc/testsuite/gfortran.dg/optional_dim_2.f90
new file mode 100644
index 000000000..41cbbf542
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/optional_dim_2.f90
@@ -0,0 +1,24 @@
+! { dg-do run }
+! PR33317 CSHIFT/EOSHIFT: Rejects optional dummy for DIM=
+! Test case submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>
+program test
+ implicit none
+ call sub(bound=.false., dimmy=1_8)
+ call sub()
+contains
+ subroutine sub(bound, dimmy)
+ integer(kind=8), optional :: dimmy
+ logical, optional :: bound
+ logical :: lotto(4)
+ character(20) :: testbuf
+ lotto = .false.
+ lotto = cshift((/.true.,.false.,.true.,.false./),1,dim=dimmy)
+ write(testbuf,*) lotto
+ if (trim(testbuf).ne." F T F T") call abort
+ lotto = .false.
+ lotto = eoshift((/.true.,.true.,.true.,.true./),1,boundary=bound,dim=dimmy)
+ lotto = eoshift(lotto,1,dim=dimmy)
+ write(testbuf,*) lotto
+ if (trim(testbuf).ne." T T F F") call abort
+ end subroutine
+end program test \ No newline at end of file