diff options
author | Steve Baird <baird@adacore.com> | 2020-03-23 16:20:17 -0700 |
---|---|---|
committer | Pierre-Marie de Rodat <derodat@adacore.com> | 2020-06-12 04:29:28 -0400 |
commit | 7c3e76b8dc4c51741e2e710aa0abe81507487f1c (patch) | |
tree | 38b24616beb1d96d5f5c1f124ffd82e4f8274b1f /gcc/gimplify.c | |
parent | 834bb57ac5a28e740b8f6e55059a102b99380176 (diff) | |
download | gcc-7c3e76b8dc4c51741e2e710aa0abe81507487f1c.zip gcc-7c3e76b8dc4c51741e2e710aa0abe81507487f1c.tar.gz gcc-7c3e76b8dc4c51741e2e710aa0abe81507487f1c.tar.bz2 |
[Ada] Implement AI12-0369
2020-06-12 Steve Baird <baird@adacore.com>
gcc/ada/
* sem_util.ads, sem_util.adb: Define 3 new Boolean-valued
functions - Statically_Denotes_Entity,
Statically_Denotes_Object, and Statically_Names_Object. The
first two were taken from sem_attr.adb. The term "statically
names" is defined in the Ada RM and the new function
Statically_Names_Object is intended to reflect that definition,
or more precisely, as described in a comment in the code, to
reflect the expected future definition of that term.
* sem_attr.adb: Delete functions Statically_Denotes_Object and
Statically_Denotes_Entity; these two functions have been moved
to package Sem_Util. Replace call to Statically_Denotes_Object
with a call to Statically_Names_Object as per AI12-0217 (a
binding interpretation, so no Ada_Version check).
* exp_ch9.adb (Expand_Entry_Barrier.Is_Simple_Barrier): Change
name of function (it was previously Is_Simple_Barrier_Name)
because the function should return True in the case of a static
expression; implement this requirement. Change function to
include a call to Statically_Names_Object so that, for Ada_2020
and later, it will return True for appropriate subcomponent
names.
(Expand_Entry_Barrier.Is_Pure_Barrier): Handle
N_Indexed_Component and N_Selected_Component cases by calling
Statically_Names_Object.
(Expand_Entry_Barrier): Reorganize to treat Simple_Barriers and
Pure_Barriers more uniformly. Prevent cascaded errors.
Diffstat (limited to 'gcc/gimplify.c')
0 files changed, 0 insertions, 0 deletions