https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102368

--- Comment #7 from anlauf at gcc dot gnu.org ---
(In reply to Thomas Koenig from comment #6)
> I think the code is valid.
> 
> A named scalar Fortran variable is interoperable if and only if its type and
> type parameters are interoperable, 
> 
> check
> 
> it is not a coarray,
> 
> check
> 
> it has neither the ALLOCATABLE nor the POINTER attribute
> 
> check
> 
> and if it is of type character
> 
> its length is not assumed or declared by an expression that is not a constant
> expression
> 
> The length of
> 
> character(kind=c_char, len=*), parameter :: blergh = 'abc'
> 
> is three, the * in "len=*" is a type paremater.

Well, F2023:18.3.1 (Interoperability of intrinsic types) still has:

(1) ... If the type is character, the length type parameter is interoperable
if and only if its value is one. ...

How does that fit with your interpretation?

Reply via email to