30 lines
987 B
Fortran
30 lines
987 B
Fortran
|
! Test BIND(C) module variable lowering
|
||
|
! RUN: bbc -emit-hlfir -o - %s | FileCheck %s
|
||
|
|
||
|
module some_c_module
|
||
|
integer, bind(c, name="i_var") :: i = 1
|
||
|
integer, bind(c, name="i_var_no_init") :: i_no_init
|
||
|
integer, bind(c) :: j_var = 2
|
||
|
integer, bind(c) :: j_var_no_init
|
||
|
end module
|
||
|
|
||
|
! CHECK-LABEL: fir.global @i_var : i32 {
|
||
|
! CHECK: %[[VAL_0:.*]] = arith.constant 1 : i32
|
||
|
! CHECK: fir.has_value %[[VAL_0]] : i32
|
||
|
! CHECK: }
|
||
|
|
||
|
! CHECK-LABEL: fir.global common @i_var_no_init : i32 {
|
||
|
! CHECK: %[[VAL_0:.*]] = fir.zero_bits i32
|
||
|
! CHECK: fir.has_value %[[VAL_0]] : i32
|
||
|
! CHECK: }
|
||
|
|
||
|
! CHECK-LABEL: fir.global @j_var : i32 {
|
||
|
! CHECK: %[[VAL_0:.*]] = arith.constant 2 : i32
|
||
|
! CHECK: fir.has_value %[[VAL_0]] : i32
|
||
|
! CHECK: }
|
||
|
|
||
|
! CHECK-LABEL: fir.global common @j_var_no_init : i32 {
|
||
|
! CHECK: %[[VAL_0:.*]] = fir.zero_bits i32
|
||
|
! CHECK: fir.has_value %[[VAL_0]] : i32
|
||
|
! CHECK: }
|