program intrinsic_mmloc_2 real a(-1:1), b(2:3), c(1:2) integer, dimension(1):: i real (kind = 8), dimension(-1:1) :: vc a = 0 b = 0 c = 0 a(-1) = 1 b(2) = 1 c(1) = 1 if (maxloc (a, 1) .ne. 1) call abort() if (maxloc (b, 1) .ne. 1) call abort() if (maxloc (c, 1) .ne. 1) call abort() ! We were giving MINLOC and MAXLOC the wrong return type vc = (/4.0d0, 2.50d1, 1.0d1/) i = minloc (vc) if (i(1) .ne. 1) call abort() END PROGRAM