! RUN: bbc -hlfir=false -o - %s | FileCheck %s module units integer, parameter :: preconnected_unit(3) = [0, 5, 6] contains ! CHECK-LABEL: _QMunitsPis_preconnected_unit logical function is_preconnected_unit(u) ! CHECK: [[units_ssa:%[0-9]+]] = fir.address_of(@_QMunitsECpreconnected_unit) : !fir.ref> integer :: u integer :: i is_preconnected_unit = .true. do i = lbound(preconnected_unit,1), ubound(preconnected_unit,1) ! CHECK: fir.coordinate_of [[units_ssa]] if (preconnected_unit(i) == u) return end do is_preconnected_unit = .false. end function end module units ! CHECK-LABEL: _QPcheck_units subroutine check_units use units do i=-1,8 if (is_preconnected_unit(i)) print*, i enddo end ! CHECK-LABEL: _QPzero subroutine zero complex, parameter :: a(0) = [(((k,k=1,10),j=-2,2,-1),i=2,-2,-2)] complex, parameter :: b(0) = [(7,i=3,-3)] ! CHECK: fir.address_of(@_QQro.0xz4.null.0) : !fir.ref>> ! CHECK-NOT: _QQro print*, '>', a, '<' print*, '>', b, '<' end ! CHECK-LABEL: _QQmain program prog call check_units call zero end ! CHECK: fir.global internal @_QFzeroECa constant : !fir.array<0x!fir.complex<4>> ! CHECK: %0 = fir.undefined !fir.array<0x!fir.complex<4>> ! CHECK: fir.has_value %0 : !fir.array<0x!fir.complex<4>>