[flang] Add bind(C) to buitlin C_PTR
D131585 Adds couple of semantics check for the components of BIND(C) derived-type. This would raise an error when a component is of C_PTR type. Add `bind(c)` to the `__builtin_c_ptr` type so the wrong error is not triggered. Reviewed By: peixin, jeanPerier Differential Revision: https://reviews.llvm.org/D132350
This commit is contained in:
parent
e5d5146323
commit
a6e155fd9a
@ -19,7 +19,7 @@ module __Fortran_builtins
|
||||
private :: selected_int_kind
|
||||
integer, parameter, private :: int64 = selected_int_kind(18)
|
||||
|
||||
type :: __builtin_c_ptr
|
||||
type, bind(c) :: __builtin_c_ptr
|
||||
integer(kind=int64) :: __address
|
||||
end type
|
||||
|
||||
|
11
flang/test/Semantics/bind-c07.f90
Normal file
11
flang/test/Semantics/bind-c07.f90
Normal file
@ -0,0 +1,11 @@
|
||||
! RUN: bbc -emit-fir -o - %s | FileCheck %s
|
||||
|
||||
module bind_c_type
|
||||
use, intrinsic :: iso_c_binding
|
||||
|
||||
type, bind(C) :: t
|
||||
type(c_ptr) :: tcptr = C_NULL_PTR
|
||||
end type
|
||||
end module
|
||||
|
||||
! CHECK-LABEL: _QMbind_c_typeE.di.t.tcptr
|
Loading…
x
Reference in New Issue
Block a user