(j3.2006) (SC22WG5.4753) [ukfortran] Provisional result of interpretations ballot 3, N1933
N.M. Maclaren
nmm1
Sun Sep 2 13:06:35 EDT 2012
I withdrew the statement that led to this exchange in my corrected vote,
as I was simply wrong. While it occurred, including it as a response
from the editor will be confusing.
Regards,
Nick Maclaren.
Nick Maclaren writes:
<<<
I agree with John Reid that it would be better to state explicitly that
they do not have the BIND attribute, but that would not help. Sentences
2 and 3 in 15.3.3 paragraph 2 states that they are interoperable, but
sentence 1 of 15.3.4 paragraph states that a derived type is
interoperable if and only if the Fortran type has the BIND attribute.
>>>
No it does not state that. I am boggled by this assertion! p1 says
"... is interoperable if it has ..."
i.e. It Most Emphatically Does Not Say "ONLY IF".
It is p2 that says that a derived type interoperates with a C struct *if
and only if* it has the BIND attribute. That means that C_PTR and C_FUNPTR
***CANNOT*** have the BIND attribute, because ***they do not interoperate
with any C struct***.
More information about the J3
mailing list