aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2009-07-30 11:26:39 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2009-07-30 11:26:39 +0200
commit3f5bb1b895b085c2b63af869b617c363b2cfcdb5 (patch)
tree3223184e5ee8bd37135126cdd155a9738bb0872d /gcc
parent18ec2bdaec162e8e8b3d2d8047281e4b7c452980 (diff)
downloadgcc-3f5bb1b895b085c2b63af869b617c363b2cfcdb5.zip
gcc-3f5bb1b895b085c2b63af869b617c363b2cfcdb5.tar.gz
gcc-3f5bb1b895b085c2b63af869b617c363b2cfcdb5.tar.bz2
[multiple changes]
2009-07-30 Ben Brosgol <brosgol@adacore.com> * gnat_ugn.texi: Correct minor texi glitch. 2009-07-30 Ed Schonberg <schonberg@adacore.com> * exp_util.adb (Expand_Subtype_From_Expr): If the type of the expression has an underlying representation that is an unchecked union, there is no subtype to build. From-SVN: r150253
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/ChangeLog12
-rw-r--r--gcc/ada/exp_util.adb6
-rw-r--r--gcc/ada/gnat_ugn.texi6
3 files changed, 18 insertions, 6 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index b4b679e..35aa542 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,8 +1,18 @@
+2009-07-30 Ben Brosgol <brosgol@adacore.com>
+
+ * gnat_ugn.texi: Correct minor texi glitch.
+
+2009-07-30 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_util.adb (Expand_Subtype_From_Expr): If the type of the
+ expression has an underlying representation that is an unchecked union,
+ there is no subtype to build.
+
2009-07-30 Robert Dewar <dewar@adacore.com>
* a-teioed.adb, exp_disp.adb, s-linux-hppa.ads, s-linux.ads,
s-tasini.adb, sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch6.adb,
- sem_ch7.adb: Minor reformatting
+ sem_ch7.adb, adaint.c: Minor reformatting
2009-07-29 Javier Miranda <miranda@adacore.com>
diff --git a/gcc/ada/exp_util.adb b/gcc/ada/exp_util.adb
index 36b0338..cd05d75 100644
--- a/gcc/ada/exp_util.adb
+++ b/gcc/ada/exp_util.adb
@@ -1321,12 +1321,14 @@ package body Exp_Util is
Rewrite (Subtype_Indic, New_Reference_To (T, Loc));
-- nothing needs to be done for private types with unknown discriminants
- -- if the underlying type is not an unconstrained composite type.
+ -- if the underlying type is not an unconstrained composite type or it
+ -- is an unchecked union.
elsif Is_Private_Type (Unc_Type)
and then Has_Unknown_Discriminants (Unc_Type)
and then (not Is_Composite_Type (Underlying_Type (Unc_Type))
- or else Is_Constrained (Underlying_Type (Unc_Type)))
+ or else Is_Constrained (Underlying_Type (Unc_Type))
+ or else Is_Unchecked_Union (Underlying_Type (Unc_Type)))
then
null;
diff --git a/gcc/ada/gnat_ugn.texi b/gcc/ada/gnat_ugn.texi
index c1feece..d3ed345 100644
--- a/gcc/ada/gnat_ugn.texi
+++ b/gcc/ada/gnat_ugn.texi
@@ -24960,7 +24960,7 @@ GNAT always follows the Alpha implementation.
For GNAT running on other than VMS systems, all the HP Ada 83 pragmas and
attributes are recognized, although only a subset of them can sensibly
be implemented. The description of pragmas in
-@xref{Implementation Defined Pragmas,,, gnat_rm, GNAT Reference Manual}
+@xref{Implementation Defined Pragmas,,, gnat_rm, GNAT Reference Manual},
indicates whether or not they are applicable to non-VMS systems.
@menu
@@ -25407,7 +25407,7 @@ pragma Extend_System (Aux_DEC);
@noindent
The pragma @code{Extend_System} is a configuration pragma that
is most conveniently placed in the @file{gnat.adc} file. @xref{Pragma
-Extend_System,,, gnat_rm, GNAT Reference Manual} for further details.
+Extend_System,,, gnat_rm, GNAT Reference Manual}, for further details.
HP Ada does not allow the recompilation of the package
@code{SYSTEM}. Instead HP Ada provides several pragmas
@@ -25438,7 +25438,7 @@ are virtually identical to those provided by the HP Ada 83 package
@code{TO_ADDRESS}
function for type @code{UNSIGNED_LONGWORD} is changed to
@code{TO_ADDRESS_LONG}.
-@xref{Address Clauses,,, gnat_rm, GNAT Reference Manual} for a
+@xref{Address Clauses,,, gnat_rm, GNAT Reference Manual}, for a
discussion of why this change was necessary.
@noindent