aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2016-05-02 12:10:01 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2016-05-02 12:10:01 +0200
commit2cc2e9642be12cc88ae8bf2b69c00affb5e1e9fe (patch)
tree7202b177596c943e3df1aa040bb132d8e4085915 /gcc
parent08e5cf22522a870f0de5be947f1494b4b63f33ad (diff)
downloadgcc-2cc2e9642be12cc88ae8bf2b69c00affb5e1e9fe.zip
gcc-2cc2e9642be12cc88ae8bf2b69c00affb5e1e9fe.tar.gz
gcc-2cc2e9642be12cc88ae8bf2b69c00affb5e1e9fe.tar.bz2
[multiple changes]
2016-05-02 Gary Dismukes <dismukes@adacore.com> * exp_ch5.adb, exp_ch7.adb, exp_ch7.ads, checks.adb, sem_attr.adb, gnat1drv.adb, sem_ch4.adb, sem_ch13.adb: Minor reformatting and typo fixes. * sem_prag.adb, sem_ch12.adb: Minor typo fixes. 2016-05-02 Ed Schonberg <schonberg@adacore.com> * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): The function call may be wrapped in an explicit type conversion. 2016-05-02 Jerome Lambourg <lambourg@adacore.com> * interfac.ads: use pragma No_Elaboration_Code_All. * s-unstyp.ads: s-unstyp.ads: use pragma No_Elaboration_Code_All. 2016-05-02 Ed Schonberg <schonberg@adacore.com> * sem.adb (Analyze: If node is an error node previously created by the parser, disable expansion to prevent subsequent glitches in error recovery. From-SVN: r235736
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/ChangeLog23
-rw-r--r--gcc/ada/checks.adb8
-rw-r--r--gcc/ada/exp_ch5.adb2
-rw-r--r--gcc/ada/exp_ch6.adb1
-rw-r--r--gcc/ada/exp_ch7.adb4
-rw-r--r--gcc/ada/exp_ch7.ads2
-rw-r--r--gcc/ada/gnat1drv.adb26
-rw-r--r--gcc/ada/interfac.ads3
-rw-r--r--gcc/ada/s-unstyp.ads3
-rw-r--r--gcc/ada/sem.adb3
-rw-r--r--gcc/ada/sem_attr.adb6
-rw-r--r--gcc/ada/sem_ch12.adb2
-rw-r--r--gcc/ada/sem_ch13.adb18
-rw-r--r--gcc/ada/sem_ch4.adb10
-rw-r--r--gcc/ada/sem_prag.adb6
15 files changed, 73 insertions, 44 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 8d6e8ef..7116d1d 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,26 @@
+2016-05-02 Gary Dismukes <dismukes@adacore.com>
+
+ * exp_ch5.adb, exp_ch7.adb, exp_ch7.ads, checks.adb, sem_attr.adb,
+ gnat1drv.adb, sem_ch4.adb, sem_ch13.adb: Minor reformatting and typo
+ fixes.
+ * sem_prag.adb, sem_ch12.adb: Minor typo fixes.
+
+2016-05-02 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): The
+ function call may be wrapped in an explicit type conversion.
+
+2016-05-02 Jerome Lambourg <lambourg@adacore.com>
+
+ * interfac.ads: use pragma No_Elaboration_Code_All.
+ * s-unstyp.ads: s-unstyp.ads: use pragma No_Elaboration_Code_All.
+
+2016-05-02 Ed Schonberg <schonberg@adacore.com>
+
+ * sem.adb (Analyze: If node is an error node previously created
+ by the parser, disable expansion to prevent subsequent glitches
+ in error recovery.
+
2016-05-02 Hristian Kirtchev <kirtchev@adacore.com>
* sem_ch13.adb (Alignment_Error): Removed.
diff --git a/gcc/ada/checks.adb b/gcc/ada/checks.adb
index 7091b78..ed0a0ad 100644
--- a/gcc/ada/checks.adb
+++ b/gcc/ada/checks.adb
@@ -2713,7 +2713,7 @@ package body Checks is
Make_Predicate_Check
(Typ, New_Occurrence_Of (Entity (N), Sloc (N))));
- -- If the expression is not an entity it may have side-effects,
+ -- If the expression is not an entity it may have side effects,
-- and the following call will create an object declaration for
-- it. We disable checks during its analysis, to prevent an
-- infinite recursion.
@@ -6195,8 +6195,8 @@ package body Checks is
-- twice (once for the check, once for the actual reference). Such a
-- double evaluation is always a potential source of inefficiency, and
-- is functionally incorrect in the volatile case, or when the prefix
- -- may have side-effects. A non-volatile entity or a component of a
- -- non-volatile entity requires no evaluation.
+ -- may have side effects. A nonvolatile entity or a component of a
+ -- nonvolatile entity requires no evaluation.
if Is_Entity_Name (Pref) then
if Treat_As_Volatile (Entity (Pref)) then
@@ -6418,7 +6418,7 @@ package body Checks is
Set_Do_Range_Check (Sub, False);
-- Force evaluation except for the case of a simple name of
- -- a non-volatile entity.
+ -- a nonvolatile entity.
if not Is_Entity_Name (Sub)
or else Treat_As_Volatile (Entity (Sub))
diff --git a/gcc/ada/exp_ch5.adb b/gcc/ada/exp_ch5.adb
index 5012f32..2a3ecbf 100644
--- a/gcc/ada/exp_ch5.adb
+++ b/gcc/ada/exp_ch5.adb
@@ -2017,7 +2017,7 @@ package body Exp_Ch5 is
-- Ada 2012 (AI05-148): Update current accessibility level if Rhs is a
-- stand-alone obj of an anonymous access type. Do not install the check
-- when the Lhs denotes a container cursor and the Next function employs
- -- an access type because this may never result in a dangling pointer.
+ -- an access type, because this can never result in a dangling pointer.
if Is_Access_Type (Typ)
and then Is_Entity_Name (Lhs)
diff --git a/gcc/ada/exp_ch6.adb b/gcc/ada/exp_ch6.adb
index ad68f89..8d0b963 100644
--- a/gcc/ada/exp_ch6.adb
+++ b/gcc/ada/exp_ch6.adb
@@ -7241,6 +7241,7 @@ package body Exp_Ch6 is
if Nkind_In (Func_Call,
N_Qualified_Expression,
+ N_Type_Conversion,
N_Unchecked_Type_Conversion)
then
Func_Call := Expression (Func_Call);
diff --git a/gcc/ada/exp_ch7.adb b/gcc/ada/exp_ch7.adb
index 8f498ac..a166b80 100644
--- a/gcc/ada/exp_ch7.adb
+++ b/gcc/ada/exp_ch7.adb
@@ -625,7 +625,7 @@ package body Exp_Ch7 is
-- Associate the anonymous master with the designated type. This
-- ensures that any additional anonymous access types with the same
- -- designated type will share the same anonymous paster within the
+ -- designated type will share the same anonymous master within the
-- same unit.
Set_Anonymous_Master (Desig_Typ, FM_Id);
@@ -2409,7 +2409,7 @@ package body Exp_Ch7 is
Init_Typ : Entity_Id;
-- The initialization type of the related object declaration. Note
- -- that this is not necessarely the same type as Obj_Typ because of
+ -- that this is not necessarily the same type as Obj_Typ because of
-- possible type derivations.
Obj_Typ : Entity_Id;
diff --git a/gcc/ada/exp_ch7.ads b/gcc/ada/exp_ch7.ads
index 3136934..b12af83 100644
--- a/gcc/ada/exp_ch7.ads
+++ b/gcc/ada/exp_ch7.ads
@@ -109,7 +109,7 @@ package Exp_Ch7 is
Context_Scope : Entity_Id := Empty;
Insertion_Node : Node_Id := Empty);
-- Build a finalization master for an access type. The designated type may
- -- not necessarely be controlled or need finalization actions depending on
+ -- not necessarily be controlled or need finalization actions depending on
-- the context. Flag For_Lib_Level must be set when creating a master for a
-- build-in-place function call access result type. Flag For_Private must
-- be set when the designated type contains a private component. Parameters
diff --git a/gcc/ada/gnat1drv.adb b/gcc/ada/gnat1drv.adb
index fdf8c8a..02950a5 100644
--- a/gcc/ada/gnat1drv.adb
+++ b/gcc/ada/gnat1drv.adb
@@ -96,10 +96,10 @@ procedure Gnat1drv is
-- Kind of main compilation unit node
Back_End_Mode : Back_End.Back_End_Mode_Type;
- -- Record back end mode
+ -- Record back-end mode
procedure Adjust_Global_Switches;
- -- There are various interactions between front end switch settings,
+ -- There are various interactions between front-end switch settings,
-- including debug switch settings and target dependent parameters.
-- This procedure takes care of properly handling these interactions.
-- We do it after scanning out all the switches, so that we are not
@@ -350,7 +350,7 @@ procedure Gnat1drv is
Force_ALI_Tree_File := True;
Try_Semantics := True;
- -- Make the Ada front-end more liberal so that the compiler will
+ -- Make the Ada front end more liberal so that the compiler will
-- allow illegal code that is allowed by other compilers. CodePeer
-- is in the business of finding problems, not enforcing rules.
-- This is useful when using CodePeer mode with other compilers.
@@ -527,7 +527,7 @@ procedure Gnat1drv is
Ttypes.Bytes_Big_Endian := not Ttypes.Bytes_Big_Endian;
end if;
- -- Activate front end layout if debug flag -gnatdF is set
+ -- Activate front-end layout if debug flag -gnatdF is set
if Debug_Flag_FF then
Targparm.Frontend_Layout_On_Target := True;
@@ -668,31 +668,31 @@ procedure Gnat1drv is
Front_End_Inlining := AAMP_On_Target or Generate_C_Code;
end if;
- -- Set back end inlining indication
+ -- Set back-end inlining indication
Back_End_Inlining :=
- -- No back end inlining available on AAMP
+ -- No back-end inlining available on AAMP
not AAMP_On_Target
- -- No back end inlining available on C generation
+ -- No back-end inlining available on C generation
and then not Generate_C_Code
- -- No back end inlining in GNATprove mode, since it just confuses
+ -- No back-end inlining in GNATprove mode, since it just confuses
-- the formal verification process.
and then not GNATprove_Mode
- -- No back end inlining if front end inlining explicitly enabled.
+ -- No back-end inlining if front-end inlining explicitly enabled.
-- Done to minimize the output differences to customers still using
-- this deprecated switch; in addition, this behavior reduces the
-- output differences in old tests.
and then not Front_End_Inlining
- -- Back end inlining is disabled if debug flag .z is set
+ -- Back-end inlining is disabled if debug flag .z is set
and then not Debug_Flag_Dot_Z;
@@ -1318,13 +1318,13 @@ begin
-- as indicated by Back_Annotate_Rep_Info being set to True.
-- We don't call for annotations on a subunit, because to process those
- -- the back-end requires that the parent(s) be properly compiled.
+ -- the back end requires that the parent(s) be properly compiled.
-- Annotation is suppressed for targets where front-end layout is
-- enabled, because the front end determines representations.
- -- The back-end is not invoked in ASIS mode with GNSA because all type
- -- representation information will be provided by the GNSA back-end, not
+ -- The back end is not invoked in ASIS mode with GNSA because all type
+ -- representation information will be provided by the GNSA back end, not
-- gigi.
if Back_End_Mode = Declarations_Only
diff --git a/gcc/ada/interfac.ads b/gcc/ada/interfac.ads
index 2c501a2..3bda2f4 100644
--- a/gcc/ada/interfac.ads
+++ b/gcc/ada/interfac.ads
@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
--- Copyright (C) 2002-2015, Free Software Foundation, Inc. --
+-- Copyright (C) 2002-2016, Free Software Foundation, Inc. --
-- --
-- This specification is derived from the Ada Reference Manual for use with --
-- GNAT. The copyright notice above, and the license provisions that follow --
@@ -36,6 +36,7 @@
pragma Compiler_Unit_Warning;
package Interfaces is
+ pragma No_Elaboration_Code_All;
pragma Pure;
-- All identifiers in this unit are implementation defined
diff --git a/gcc/ada/s-unstyp.ads b/gcc/ada/s-unstyp.ads
index 9eefc15..9a02704 100644
--- a/gcc/ada/s-unstyp.ads
+++ b/gcc/ada/s-unstyp.ads
@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
--- Copyright (C) 1992-2014, Free Software Foundation, Inc. --
+-- Copyright (C) 1992-2016, 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- --
@@ -39,6 +39,7 @@ pragma Compiler_Unit_Warning;
package System.Unsigned_Types is
pragma Pure;
+ pragma No_Elaboration_Code_All;
type Short_Short_Unsigned is mod 2 ** Short_Short_Integer'Size;
type Short_Unsigned is mod 2 ** Short_Integer'Size;
diff --git a/gcc/ada/sem.adb b/gcc/ada/sem.adb
index 36c6298..3cd0730 100644
--- a/gcc/ada/sem.adb
+++ b/gcc/ada/sem.adb
@@ -618,8 +618,11 @@ package body Sem is
-- A call to analyze the error node is simply ignored, to avoid
-- causing cascaded errors (happens of course only in error cases)
+ -- Disable expansion in case it is still enabled, to prevent other
+ -- subsequent compiler glitches.
when N_Error =>
+ Expander_Mode_Save_And_Set (False);
null;
-- Push/Pop nodes normally don't come through an analyze call. An
diff --git a/gcc/ada/sem_attr.adb b/gcc/ada/sem_attr.adb
index 6d8f8fc..30d33d2 100644
--- a/gcc/ada/sem_attr.adb
+++ b/gcc/ada/sem_attr.adb
@@ -4975,9 +4975,9 @@ package body Sem_Attr is
-- and does not suffer from the out-of-order issue described
-- above. Thus, this expansion is skipped in SPARK mode.
- -- THe expansion is not relevant for discrete types, that will
- -- not generate extra declarations, and where use of the base
- -- type may lead to spurious errors if context is a case.
+ -- The expansion is not relevant for discrete types, which will
+ -- not generate extra declarations, and where use of the base type
+ -- may lead to spurious errors if context is a case.
if not GNATprove_Mode then
if not Is_Discrete_Type (Pref_Typ) then
diff --git a/gcc/ada/sem_ch12.adb b/gcc/ada/sem_ch12.adb
index 699ad69..04b7fb4 100644
--- a/gcc/ada/sem_ch12.adb
+++ b/gcc/ada/sem_ch12.adb
@@ -7908,7 +7908,7 @@ package body Sem_Ch12 is
end loop;
-- Expanded code usually shares the source location of the original
- -- construct it was generated for. This however may not necessarely
+ -- construct it was generated for. This however may not necessarily
-- reflect the true location of the code within the tree.
-- Before comparing the slocs of the two nodes, make sure that we are
diff --git a/gcc/ada/sem_ch13.adb b/gcc/ada/sem_ch13.adb
index 73fecfc..2354cde 100644
--- a/gcc/ada/sem_ch13.adb
+++ b/gcc/ada/sem_ch13.adb
@@ -5023,7 +5023,7 @@ package body Sem_Ch13 is
-- Tagged type case, check for attempt to set alignment to a
-- value greater than Max_Align, and reset if so. This error
-- is suppressed in ASIS mode to allow for different ASIS
- -- back-ends or ASIS-based tools to query the illegal clause.
+ -- back ends or ASIS-based tools to query the illegal clause.
if Is_Tagged_Type (U_Ent)
and then Align > Max_Align
@@ -5465,7 +5465,7 @@ package body Sem_Ch13 is
Set_Machine_Radix_10 (U_Ent);
-- The following error is suppressed in ASIS mode to allow for
- -- different ASIS back-ends or ASIS-based tools to query the
+ -- different ASIS back ends or ASIS-based tools to query the
-- illegal clause.
elsif not ASIS_Mode then
@@ -5497,7 +5497,7 @@ package body Sem_Ch13 is
Check_Size (Expr, U_Ent, Size, Biased);
-- The following errors are suppressed in ASIS mode to allow
- -- for different ASIS back-ends or ASIS-based tools to query
+ -- for different ASIS back ends or ASIS-based tools to query
-- the illegal clause.
if ASIS_Mode then
@@ -5714,7 +5714,7 @@ package body Sem_Ch13 is
else
-- The following error is suppressed in ASIS mode to allow
- -- for different ASIS back-ends or ASIS-based tools to query
+ -- for different ASIS back ends or ASIS-based tools to query
-- the illegal clause.
if Is_Elementary_Type (Etyp)
@@ -6044,7 +6044,7 @@ package body Sem_Ch13 is
elsif Is_Elementary_Type (U_Ent) then
-- The following errors are suppressed in ASIS mode to allow
- -- for different ASIS back-ends or ASIS-based tools to query
+ -- for different ASIS back ends or ASIS-based tools to query
-- the illegal clause.
if ASIS_Mode then
@@ -10902,7 +10902,7 @@ package body Sem_Ch13 is
procedure Size_Too_Small_Error (Min_Siz : Uint) is
begin
-- This error is suppressed in ASIS mode to allow for different ASIS
- -- back-ends or ASIS-based tools to query the illegal clause.
+ -- back ends or ASIS-based tools to query the illegal clause.
if not ASIS_Mode then
Error_Msg_Uint_1 := Min_Siz;
@@ -11560,7 +11560,7 @@ package body Sem_Ch13 is
elsif Align <= 0 then
-- This error is suppressed in ASIS mode to allow for different ASIS
- -- back-ends or ASIS-based tools to query the illegal clause.
+ -- back ends or ASIS-based tools to query the illegal clause.
if not ASIS_Mode then
Error_Msg_N ("alignment value must be positive", Expr);
@@ -11579,7 +11579,7 @@ package body Sem_Ch13 is
if M > Align then
-- This error is suppressed in ASIS mode to allow for
- -- different ASIS back-ends or ASIS-based tools to query the
+ -- different ASIS back ends or ASIS-based tools to query the
-- illegal clause.
if not ASIS_Mode then
@@ -14206,7 +14206,7 @@ package body Sem_Ch13 is
Target => Target,
Act_Unit => Act_Unit));
- -- If both sizes are known statically now, then back end annotation
+ -- If both sizes are known statically now, then back-end annotation
-- is not required to do a proper check but if either size is not
-- known statically, then we need the annotation.
diff --git a/gcc/ada/sem_ch4.adb b/gcc/ada/sem_ch4.adb
index e31704b..c867cf6 100644
--- a/gcc/ada/sem_ch4.adb
+++ b/gcc/ada/sem_ch4.adb
@@ -7469,7 +7469,7 @@ package body Sem_Ch4 is
Subp_Id : Entity_Id;
begin
- -- Ensure that the routine is not called with itypes which lack a
+ -- Ensure that the routine is not called with itypes, which lack a
-- declarative node.
pragma Assert (Present (Typ_Decl));
@@ -7526,7 +7526,7 @@ package body Sem_Ch4 is
Param_Typ : Node_Id;
begin
- -- The classify as a suitable candidate, the subprogram must be a
+ -- To classify as a suitable candidate, the subprogram must be a
-- function whose name matches the argument of aspect Constant or
-- Variable_Indexing.
@@ -7667,12 +7667,12 @@ package body Sem_Ch4 is
C_Type := Etype (Base_Type (C_Type));
end if;
- -- Check whether type the has a specified indexing aspect
+ -- Check whether the type has a specified indexing aspect
Func_Name := Empty;
- -- The context is suitable for constant indexing, obtain the name of the
- -- indexing function from aspect Constant_Indexing.
+ -- The context is suitable for constant indexing, so obtain the name of
+ -- the indexing function from aspect Constant_Indexing.
if Constant_Indexing_OK then
Func_Name :=
diff --git a/gcc/ada/sem_prag.adb b/gcc/ada/sem_prag.adb
index d4243a3..e22d798 100644
--- a/gcc/ada/sem_prag.adb
+++ b/gcc/ada/sem_prag.adb
@@ -466,7 +466,7 @@ package body Sem_Prag is
-- Set the Ghost mode in effect from the pragma. Due to the delayed
-- analysis of the pragma, the Ghost mode at point of declaration and
- -- point of analysis may not necessarely be the same. Use the mode in
+ -- point of analysis may not necessarily be the same. Use the mode in
-- effect at the point of declaration.
Set_Ghost_Mode (N);
@@ -2658,7 +2658,7 @@ package body Sem_Prag is
-- Set the Ghost mode in effect from the pragma. Due to the delayed
-- analysis of the pragma, the Ghost mode at point of declaration and
- -- point of analysis may not necessarely be the same. Use the mode in
+ -- point of analysis may not necessarily be the same. Use the mode in
-- effect at the point of declaration.
Set_Ghost_Mode (N);
@@ -23297,7 +23297,7 @@ package body Sem_Prag is
-- Set the Ghost mode in effect from the pragma. Due to the delayed
-- analysis of the pragma, the Ghost mode at point of declaration and
- -- point of analysis may not necessarely be the same. Use the mode in
+ -- point of analysis may not necessarily be the same. Use the mode in
-- effect at the point of declaration.
Set_Ghost_Mode (N);