! Note: flang will issue warnings for the following subroutines. These ! are accepted regardless to maintain backwards compatibility with ! other Fortran implementations. ! RUN: bbc -emit-fir %s -o - | FileCheck %s ! CHECK-LABEL: func @_QPs1() { ! CHECK: fir.convert %{{.*}} : ((!fir.boxchar<1>) -> ()) -> ((!fir.ref) -> ()) ! Pass a REAL by reference to a subroutine expecting a CHARACTER subroutine s1 call s3(r) end subroutine s1 ! CHECK-LABEL: func @_QPs2( ! CHECK: fir.convert %{{.*}} : ((!fir.boxchar<1>) -> ()) -> ((!fir.ref) -> ()) ! Pass a REAL, POINTER data reference to a subroutine expecting a CHARACTER subroutine s2(p) real, pointer :: p call s3(p) end subroutine s2 ! CHECK-LABEL: func @_QPs3( ! CHECK-SAME: !fir.boxchar<1> subroutine s3(c) character(8) c end subroutine s3