08-190 To: J3 From: Malcolm Cohen Subject: Interp F03/0071 Date: 2008 May 15 ---------------------------------------------------------------------- NUMBER: F03/0074 TITLE: Type mismatch for C character arguments KEYWORDS: Interoperability, dummy procedures DEFECT TYPE: ERRATUM STATUS: J3 consideration in progress QUESTION: Is the following conforming if the C character kind (C_CHAR) is not the same as the default character kind (KIND('A'))? Interface Subroutine sub(string) Bind(C) Character(Kind=C_Char) :: string(*) End Subroutine End Interface Character(Kind=C_Char,Len=10) :: string Call sub(string) The second and 3rd paras of 12.4.1.2 do not treat C character kind the same as default character kind, and seem to require matching type parameter values between the actual and dummy. This makes Note 15.23 nonconforming if C_CHAR is not the same as default character kind, and is also not in sync with 270:25-26. ANSWER: Yes, the program fragment is standard-conforming. An edit is provided to correct the oversight in 12.4.1.2. EDITS: [269:3,5,8] After each "of type default character", Insert "or of type character with the C character kind (15.1)", Thrice. SUBMITTED BY: Aleksandar Donev HISTORY: 06-105 m175 F03/0074 Submitted 08-190 m184 Revised answer. ----------------------------------------------------------------------