xref: /llvm-project/flang/test/Lower/call-implicit.f90 (revision f35f863a88f83332bef9605ef4cfe4f05c066efb)
1! RUN: bbc %s -o "-" -emit-fir -hlfir=false | FileCheck %s
2! Test lowering of calls to procedures with implicit interfaces using different
3! calls with different argument types, one of which is character
4subroutine s2
5  integer i(3)
6! CHECK:  %[[a0:.*]] = fir.alloca !fir.array<3xi32> {bindc_name = "i", uniq_name = "_QFs2Ei"}
7  ! CHECK: fir.call @_QPsub2(%[[a0]]) {{.*}}: (!fir.ref<!fir.array<3xi32>>) -> ()
8  call sub2(i)
9! CHECK:  %[[a1:.*]] = fir.address_of(@_QQclX3031323334) : !fir.ref<!fir.char<1,5>>
10! CHECK:  %[[a2:.*]] = fir.convert %[[a1]] : (!fir.ref<!fir.char<1,5>>) -> !fir.ref<!fir.array<3xi32>>
11  ! CHECK: fir.call @_QPsub2(%[[a2]]) {{.*}}: (!fir.ref<!fir.array<3xi32>>) -> ()
12  call sub2("01234")
13end
14