CVS difference for ais/ai-00285.txt

Differences between 1.9 and version 1.10
Log of other versions for file ais/ai-00285.txt

--- ais/ai-00285.txt	2003/06/06 20:00:49	1.9
+++ ais/ai-00285.txt	2003/06/13 02:09:09	1.10
@@ -1,4 +1,4 @@
-!standard A.3.2(49)                                    03-01-10  AI95-00285/03
+!standard A.3.2(49)                                    03-06-12  AI95-00285/04
 !class amendment 02-01-23
 !status work item 02-09-24
 !status received 02-01-15
@@ -71,8 +71,9 @@
 Throughout the syntax rules, we specify which characters are allowed for the
 lexical elements. For instance, the E in the exponent part of a numeric literal
 may not be a "Greek Capital Letter Epsilon", even though a capital E and a
-capital epsilon look very much the same.  Similar considerations apply to the
-extended digits, the point, etc.
+capital epsilon look very much the same. Similar considerations apply to the
+extended digits, the point, etc. So this means that we are not changing which
+characters may be used to build numeric_literals, based_literals, and so on.
 
 ISO/IEC 10646 proposes to define identifiers for programming languages as
 follows (see http://www.unicode.org/unicode/reports/tr15/tr15-
@@ -139,6 +140,14 @@
 characters at positions 16#85#, 16#2028# and 16#2029#. These characters may be
 used to terminate lines, as recommended by http://www.unicode.org/reports/tr13.
 
+We are not changing the definition of character_literals and string_literals.
+In particular, we _do_not_ apply Normalization Form KC to such literals. This
+means in particular that two string literals which look alike may not compare
+equal. Also note that characters in category other_format are forbidden in
+character_literals and string_literals, because their sole purpose is to affect
+the presentation of characters. If a program needs to operate on these
+characters, it can do that by using Wide_Wide_Character'Val (...).
+
 Private use characters are not considered to be graphic characters (even though
 for some applications they may actually turn out to be graphic). The reason is
 that we wouldn't be able to define the normalization and case folding rules for
@@ -153,7 +162,7 @@
 implementation may do pretty much what it likes.
 
 In order to represent 32-bit characters at run-time, we add new declarations to
-Standard.  We also provide the following new predefined packages for 32-bit
+Standard. We also provide the following new predefined packages for 32-bit
 characters:
 
     Ada.Strings.Wide_Wide_Bounded
@@ -167,7 +176,7 @@
     Ada.Wide_Wide_Text_IO.Editing
 
 These packages are similar to their Wide_ equivalents, with Wide_Wide_
-substituted for Wide_ everywhere.  In addition the following declaration is
+substituted for Wide_ everywhere. In addition the following declaration is
 present in Ada.Strings.Wide_Wide_Maps.Wide_Wide_Constants:
 
     Wide_Character_Set : constant Wide_Wide_Maps.Wide_Wide_Character_Set;
@@ -175,7 +184,7 @@
 It contains each Wide_Wide_Character value in the BMP of ISO/IEC 10646.
 
 The attributes Wide_Wide_Image, Wide_Wide_Value and Wide_Wide_Width are also
-provided.  Their definition is similar to that of Wide_Image, Wide_Value
+provided. Their definition is similar to that of Wide_Image, Wide_Value
 and Wide_Width, respectively, with Wide_Character and Wide_String replaced by
 Wide_Wide_Character and Wide_Wide_String.
 
@@ -229,7 +238,7 @@
 Replace 2.1(1) by:
 
 The characters whose Code Point is 16#FFFE# or 16#FFFF# are not allowed
-anywhere in the text of a program.  The characters in categories other_control,
+anywhere in the text of a program. The characters in categories other_control,
 other_private_use and other_surrogate are only allowed in comments.
 
 
@@ -1102,7 +1111,7 @@
 
 49   If an implementation provides a localized definition of Character or
 Wide_Character, then the effects of the subprograms in Characters.Handling
-should reflect the localizations.  See also 3.5.2.
+should reflect the localizations. See also 3.5.2.
 
 which implies that some mysterious transformation happens on this package
 (under what circumstnaces?) I think this is a bad idea for two reasons:

Questions? Ask the ACAA Technical Agent