! { dg-do compile }
subroutine foo(tmp1, tmp2, tmp3)
  integer, parameter :: n = 100
  real :: tmp1(n,2), tmp2(n), tmp3(n)
  integer :: i, c1, c2, c3
  logical :: cond
  common c1, c2, c3
  c2 = c3
  cond = c1 .eq. 1 .and. c3 .eq. 1
  do i = 1,100
     if (cond) tmp2(i) = tmp1(i,1) / tmp1(i,2)
  end do
  do i = 1,100
     if (cond) tmp3(i) = tmp2(i)
  end do
end subroutine foo