!ASIS Issue #064 !topic Ada Wide Character and Wide String !reference ASIS 95-3 to ASIS 95-23 !from CACI as part of AJPO support sub-task 3/10/97 !keywords Wide Character and Wide String !discussion ASIS does not provide the capability for wide characters and wide string support, because ASIS.Character and ASIS.String are based upon Standard.Character and Standard.String respectively. The current ASIS specification makes no provision for ISO/IEC 10646-1:1993 characters or strings. which precludes an application that utilizes these data types for either as source text, comments or expressions. The current implementation will fail, when an ASIS application has source that contains wide characters or wide strings. !resolution Accepted. !date 97-08-25 !Notes Commentary in Section 3 was changed to read: "The ASIS interface uses string parameters for many procedure and function calls. Wide_String is used to convey ASIS environment information. Program_Text, a subtype of Wide_String is used to convey program text. The type String is not used in the ASIS interface. Neither the Ada types Character nor Wide_Character are used in the ASIS interface." A new subtype was added: subtype Program_Text is Wide_String; Program_Text was defined in Section 3.14 so as not to cause a renumbering of sections. This is also a good logical place for Program_Text as the subtype is closely associated with Package Asis.Text, numbered as Clause 20 towards the end. All the overloading between the previous String and Wide_String subprograms has been eliminated. The following functions and parameters now use Wide_String as types of their parameters or return values: 6.1 function ASIS_Version 6.2 function ASIS_Implementor 6.3 function ASIS_Implementor_Version 6.4 function ASIS_Implementor_Information 6.6 procedure Initialize 6.8 procedure Finalize 6.10 function Diagnosis 6.11 procedure Set_Status 8.1 function Default_Name 8.2 function Default_Parameters 8.3 procedure Associate 8.12 function Name 8.13 function Parameters 8.14 function Debug_Image 9.10 function Name 10.6 function Library_Unit_Declaration 10.7 function Compilation_Unit_Body 10.19 function Unit_Full_Name 10.20 function Unique_Name 10.24 function Text_Name 10.25 function Text_Form 10.26 function Object_Name 10.27 function Object_Form 10.28 function Compilation_Command_Line_Options 10.29 function Has_Attribute 10.30 function Attribute_Value_Delimiter 10.31 function Attribute_Values 10.34 function Debug_Image 11.4 function Attribute_Time 13.41 function Debug_Image 15.4 function Representation_Value_Image 17.2 function Value_Image 20.22 function Delimiter_Image 20.28 function Debug_Image 21.9 function Debug_Image The following functions and parameters now use Program_Text as types of their parameters or return values: 13.39 function Pragma_Name_Image 15.2 function Defining_Name_Image 15.3 function Position_Number_Image 17.3 function Name_Image 20.23 function Element_Image 20.24 function Line_Image 20.25 function Non_Comment_Image 20.26 function Comment_Image