[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Fri, 18 Jul 2014 11:00:59 +0000 (13:00 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Fri, 18 Jul 2014 11:00:59 +0000 (13:00 +0200)
2014-07-18  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Remove mention of obsolete attributes
Max[_Interrupt]_Priority, which have never been implemented
(or at the very least were removed long ago if they ever were
implemented.  Add documentation of Max[_Interrupt]_Priority
constants in package System.
* ttypes.ads: Document actual handling of package System,
rather than a historical fantasy version.  Remove mention of
non-existent attributes Max[_Interrupt]_Priority.

2014-07-18  Pascal Obry  <obry@adacore.com>

* a-witeio.adb (Put): No 16-bit character output when text
translation is disabled.
* i-cstrea.ads: Code clean up.

From-SVN: r212813

gcc/ada/ChangeLog
gcc/ada/a-witeio.adb
gcc/ada/gnat_rm.texi
gcc/ada/i-cstrea.ads
gcc/ada/ttypes.ads

index ab3d1d3..49cbaec 100644 (file)
@@ -1,5 +1,21 @@
 2014-07-18  Robert Dewar  <dewar@adacore.com>
 
+       * gnat_rm.texi: Remove mention of obsolete attributes
+       Max[_Interrupt]_Priority, which have never been implemented
+       (or at the very least were removed long ago if they ever were
+       implemented.  Add documentation of Max[_Interrupt]_Priority
+       constants in package System.
+       * ttypes.ads: Document actual handling of package System,
+       rather than a historical fantasy version.  Remove mention of
+       non-existent attributes Max[_Interrupt]_Priority.
+
+2014-07-18  Pascal Obry  <obry@adacore.com>
+
+       * a-witeio.adb (Put): No 16-bit character output when text
+       translation is disabled.
+       * i-cstrea.ads: Code clean up.
+2014-07-18  Robert Dewar  <dewar@adacore.com>
+
        * gnat_rm.texi: Document that Wchar_T_Size and Word_Size are
        static attributes.
 
index 6324906..59e06e2 100644 (file)
@@ -1257,7 +1257,7 @@ package body Ada.Wide_Text_IO is
       FIO.Check_Write_Status (AP (File));
 
       if wide_text_translation_required /= 0
-        or else File.Text_Encoding /= Default_Text
+        or else File.Text_Encoding in Non_Default_Text_Content_Encoding
       then
          set_mode (fileno (File.Stream), File.Text_Encoding);
          Discard := fputwc (Wide_Character'Pos (Item), File.Stream);
index 1615b46..ed78288 100644 (file)
@@ -363,8 +363,6 @@ Implementation Defined Attributes
 * Attribute Loop_Entry::
 * Attribute Machine_Size::
 * Attribute Mantissa::
-* Attribute Max_Interrupt_Priority::
-* Attribute Max_Priority::
 * Attribute Maximum_Alignment::
 * Attribute Mechanism_Code::
 * Attribute Null_Parameter::
@@ -8399,8 +8397,6 @@ consideration, you should minimize the use of these attributes.
 * Attribute Loop_Entry::
 * Attribute Machine_Size::
 * Attribute Mantissa::
-* Attribute Max_Interrupt_Priority::
-* Attribute Max_Priority::
 * Attribute Maximum_Alignment::
 * Attribute Mechanism_Code::
 * Attribute Null_Parameter::
@@ -8965,23 +8961,6 @@ The @code{Mantissa} attribute is provided for compatibility with Ada 83.  See
 the Ada 83 reference manual for an exact description of the semantics of
 this attribute.
 
-@node Attribute Max_Interrupt_Priority
-@unnumberedsec Attribute Max_Interrupt_Priority
-@cindex Interrupt priority, maximum
-@findex Max_Interrupt_Priority
-@noindent
-@code{Standard'Max_Interrupt_Priority} (@code{Standard} is the only
-permissible prefix), provides the same value as
-@code{System.Max_Interrupt_Priority}.
-
-@node Attribute Max_Priority
-@unnumberedsec Attribute Max_Priority
-@cindex Priority, maximum
-@findex Max_Priority
-@noindent
-@code{Standard'Max_Priority} (@code{Standard} is the only permissible
-prefix) provides the same value as @code{System.Max_Priority}.
-
 @node Attribute Maximum_Alignment
 @unnumberedsec Attribute Maximum_Alignment
 @cindex Alignment, maximum
@@ -13056,7 +13035,15 @@ and its language-defined children.  See 13.7(2).
 @end cartouche
 @noindent
 See the definition of these packages in files @file{system.ads} and
-@file{s-stoele.ads}.
+@file{s-stoele.ads}. Note that two declarations are added to package
+System.
+
+@smallexample @c ada
+   Max_Priority           : constant Positive :=
+     Priority'Last;
+   Max_Interrupt_Priority : constant Positive :=
+     Interrupt_Priority'Last;
+@end smallexample
 
 @sp 1
 @item
index 674aa02..48fbfc4 100644 (file)
@@ -243,16 +243,18 @@ package Interfaces.C_Streams is
    --
    --  This encoding is system dependent and only used on Windows systems.
    --
-   --  Note that modifications to Content_Encoding must be synchronized
-   --  with sysdep.c:__gnat_set_mode.
+   --  Note that modifications to Content_Encoding must be synchronized with
+   --  sysdep.c:__gnat_set_mode.
 
    subtype Text_Content_Encoding
      is Content_Encoding range Default_Text .. U16text;
 
+   subtype Non_Default_Text_Content_Encoding
+     is Content_Encoding range Text .. U16text;
+
    procedure set_mode (handle : int; Mode : Content_Encoding);
-   --  As above but can set the handle to any mode.
-   --  On Windows this can be used to have proper 16-bit wide-string output
-   --  on the console for example.
+   --  As above but can set the handle to any mode. On Windows this can be used
+   --  to have proper 16-bit wide-string output on the console for example.
 
    ----------------------------
    -- Full Path Name support --
index efeea41..0aca903 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 S p e c                                  --
 --                                                                          --
---          Copyright (C) 1992-2013, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- GNAT is free software;  you can  redistribute it  and/or modify it under --
 -- terms of the  GNU General Public License as published  by the Free Soft- --
@@ -64,21 +64,19 @@ package Ttypes is
    --  values needed in Stand are obtained by direct reference to Ttypes
    --  and Ttypef.
 
-   --  For package System, the required constant values are obtained by
-   --  referencing appropriate attributes. Ada 95 already defines most of
-   --  the required attributes, and GNAT specific attributes have been
-   --  defined to cover the remaining cases (such as Storage_Unit). The
-   --  evaluation of these attributes obtains the required target dependent
-   --  values from Ttypes and Ttypef. The additional attributes that have
-   --  been added to GNAT (Address_Size, Storage_Unit, Word_Size, Max_Priority,
-   --  and Max_Interrupt_Priority) are for almost all purposes redundant with
-   --  respect to the corresponding references to System constants. For example
-   --  in a program, System.Address_Size and Standard'Address_Size yield the
-   --  same value. The critical use of the attribute is in writing the System
-   --  declaration of Address_Size which of course cannot refer to itself. By
-   --  this means we achieve complete target independence in the source code
-   --  of package System, i.e. there is only one copy of the source of System
-   --  for all targets.
+   --  For package System, there is a separate version for each target, with
+   --  explicit declarations of the required, constants.
+
+   --  Historical note: Originally we had in mind dealing with target dependent
+   --  differences by referencing appropriate attributes. Ada 95 already
+   --  defines most of the required attributes, and GNAT specific attributes
+   --  were defined to cover the remaining cases (such as Storage_Unit).
+   --  The additional attributes that have been added to GNAT (Address_Size,
+   --  Storage_Unit, and Word_Size) are redundant with respect to the
+   --  corresponding references to System constants. For example in a program,
+   --  System.Address_Size and Standard'Address_Size yield the same value.
+   --  These attributes have been retained for compatibility purposes, but
+   --  serve no purpose at this stage.
 
    --  Note that during compilation there are two versions of package System
    --  around. The version that is directly with'ed by compiler packages