aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2014-07-18 13:00:59 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2014-07-18 13:00:59 +0200
commit2941bf7dabfa03f232316f2c29fa7e13328b09ba (patch)
tree97bcadaec217cb1187312be1c2760b3a412b68ac /gcc
parent676fa39756b56648026fa383dfe89239c72fb7ea (diff)
downloadgcc-2941bf7dabfa03f232316f2c29fa7e13328b09ba.zip
gcc-2941bf7dabfa03f232316f2c29fa7e13328b09ba.tar.gz
gcc-2941bf7dabfa03f232316f2c29fa7e13328b09ba.tar.bz2
[multiple changes]
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
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/ChangeLog16
-rw-r--r--gcc/ada/a-witeio.adb2
-rw-r--r--gcc/ada/gnat_rm.texi31
-rw-r--r--gcc/ada/i-cstrea.ads12
-rw-r--r--gcc/ada/ttypes.ads30
5 files changed, 47 insertions, 44 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index ab3d1d3..49cbaec 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -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.
diff --git a/gcc/ada/a-witeio.adb b/gcc/ada/a-witeio.adb
index 6324906..59e06e2 100644
--- a/gcc/ada/a-witeio.adb
+++ b/gcc/ada/a-witeio.adb
@@ -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);
diff --git a/gcc/ada/gnat_rm.texi b/gcc/ada/gnat_rm.texi
index 1615b46..ed78288 100644
--- a/gcc/ada/gnat_rm.texi
+++ b/gcc/ada/gnat_rm.texi
@@ -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
diff --git a/gcc/ada/i-cstrea.ads b/gcc/ada/i-cstrea.ads
index 674aa02..48fbfc4 100644
--- a/gcc/ada/i-cstrea.ads
+++ b/gcc/ada/i-cstrea.ads
@@ -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 --
diff --git a/gcc/ada/ttypes.ads b/gcc/ada/ttypes.ads
index efeea41..0aca903 100644
--- a/gcc/ada/ttypes.ads
+++ b/gcc/ada/ttypes.ads
@@ -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