aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sem_util.ads
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2017-01-13 11:42:37 +0100
committerArnaud Charlet <charlet@gcc.gnu.org>2017-01-13 11:42:37 +0100
commit00f45f309076825e5bae672ffc2229fbe6ef8d88 (patch)
treeff983b37d2975254808502a007da8cc9fd9fb3e9 /gcc/ada/sem_util.ads
parenteaed322611b9c09a746f84e6280cdd400aaf9d60 (diff)
downloadgcc-00f45f309076825e5bae672ffc2229fbe6ef8d88.zip
gcc-00f45f309076825e5bae672ffc2229fbe6ef8d88.tar.gz
gcc-00f45f309076825e5bae672ffc2229fbe6ef8d88.tar.bz2
[multiple changes]
2017-01-13 Ed Schonberg <schonberg@adacore.com> * sem_util.ads, sem_util.adb (Choice_List): Move function here from sem_aggr.adb, for use elsewhere. * sem_ch3.adb (Analyze_Object_Declaration): Use Choice_List. * sem_aggr.adb (Resolve_Array_Aggregate): Remove Iterated_Component_Present. * exp_aggr.adb: Use Choice_List throughout, to handle Iterated_Component_Associations. (Gen_Loop): Generate proper loop for an Iterated_Component_Association: loop variable has the identifier of the original association. Generate a loop even for a single component choice, in order to make loop parameter visible in expression. (Flatten): An Iterated_Component_Association is not static. 2017-01-13 Yannick Moy <moy@adacore.com> * exp_ch4.adb (Expand_N_Op_Expon): Ensure that the value of float exponentiation for statically known small negative values is the reciprocal of the exponentiation for the opposite value of the exponent. * s-exnllf.adb (Exn_Float, Exn_Long_Float, Exn_Long_Long_Float): Ensure that the value of float exponentiation for negative values is the reciprocal of the exponentiation for the opposite value of the exponent. * inline.adb (Expand_Inlined_Call): Fix the count for the number of generated gotos. From-SVN: r244414
Diffstat (limited to 'gcc/ada/sem_util.ads')
-rw-r--r--gcc/ada/sem_util.ads6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/ada/sem_util.ads b/gcc/ada/sem_util.ads
index 1e84fa5..b5d1e4a 100644
--- a/gcc/ada/sem_util.ads
+++ b/gcc/ada/sem_util.ads
@@ -337,6 +337,12 @@ package Sem_Util is
-- and the context is external to the protected operation, to warn against
-- a possible unlocked access to data.
+ function Choice_List (N : Node_Id) return List_Id;
+ -- Utility to retrieve the choices of a Component_Association or the
+ -- Discrete_Choices of an Iterated_Component_Association. For various
+ -- reasons these nodes have a different structure even though they play
+ -- similar roles in array aggregates.
+
function Collect_Body_States (Body_Id : Entity_Id) return Elist_Id;
-- Gather the entities of all abstract states and objects declared in the
-- body state space of package body Body_Id.