diff gcc/testsuite/gfortran.dg/dependency_42.f90 @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children 84e7813d76e9
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gcc/testsuite/gfortran.dg/dependency_42.f90	Fri Oct 27 22:46:09 2017 +0900
@@ -0,0 +1,16 @@
+! { dg-do run }
+! { dg-options "-Warray-temporaries" }
+! PR fortran/56937 - unnecessary temporaries with vector indices
+program main
+  real :: q(4), r(4), p(3)
+  integer :: idx(3)
+  p = [0.5, 1.0, 2.0]
+  idx = [4,3,1]
+  r = 1.0
+  r(idx) = r(idx) + p
+  q = 1.0
+  q(4) = q(4) + p(1)
+  q(3) = q(3) + p(2)
+  q(1) = q(1) + p(3)
+  if (any (q - r /= 0)) call abort
+end