[flang] Support C1553 about BIND(C) function result
As Fortran 2018 C1553, if with BIND(C), the function result shall be an interoperable scalar variable. As Fortran 2018 18.3.4(1), the interoperable scalar variable is not a coarray, has neither the ALLOCATABLE nor the POINTER attribute, and if it is of type character its length is not assumed or declared by an expression that is not a constant expression. As Fortran 2018 18.3.1(1), if the type is character, the length type parameter is interoperable if and only if its value is one. Reviewed By: PeteSteinfeld, jeanPerier Differential Revision: https://reviews.llvm.org/D137254
Loading
Please sign in to comment