summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/dependency_34.f90
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gfortran.dg/dependency_34.f90')
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_34.f9022
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/dependency_34.f90 b/gcc/testsuite/gfortran.dg/dependency_34.f90
new file mode 100644
index 000000000..82d286ebb
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/dependency_34.f90
@@ -0,0 +1,22 @@
+! { dg-do compile }
+! { dg-options "-Warray-temporaries" }
+module foo
+ implicit none
+contains
+ integer pure function bar(i,j)
+ integer, intent(in) :: i,j
+ bar = 3 - i + 1 * abs(i) + j
+ end function bar
+end module foo
+
+program main
+ use foo
+ implicit none
+ real a(10)
+ integer :: i
+ read (*,*) a, i
+ a(i:abs(i)) = a(i:abs(i))
+ a(bar(i,i+2):2) = a(bar(i,i+2):2)
+ a(int(i,kind=2):5) = a(int(i,kind=2)+1:6)
+end program main
+! { dg-final { cleanup-modules "foo" } }