30 lines · plain
1! Test BIND(C) module variable lowering2! RUN: bbc -emit-hlfir -o - %s | FileCheck %s3 4module some_c_module5 integer, bind(c, name="i_var") :: i = 16 integer, bind(c, name="i_var_no_init") :: i_no_init7 integer, bind(c) :: j_var = 28 integer, bind(c) :: j_var_no_init9end module10 11! CHECK-LABEL: fir.global @i_var : i32 {12! CHECK: %[[VAL_0:.*]] = arith.constant 1 : i3213! CHECK: fir.has_value %[[VAL_0]] : i3214! CHECK: }15 16! CHECK-LABEL: fir.global common @i_var_no_init : i32 {17! CHECK: %[[VAL_0:.*]] = fir.zero_bits i3218! CHECK: fir.has_value %[[VAL_0]] : i3219! CHECK: }20 21! CHECK-LABEL: fir.global @j_var : i32 {22! CHECK: %[[VAL_0:.*]] = arith.constant 2 : i3223! CHECK: fir.has_value %[[VAL_0]] : i3224! CHECK: }25 26! CHECK-LABEL: fir.global common @j_var_no_init : i32 {27! CHECK: %[[VAL_0:.*]] = fir.zero_bits i3228! CHECK: fir.has_value %[[VAL_0]] : i3229! CHECK: }30