[Ada] Incremental patch for restriction No_Dynamic_Accessibility_Checks
authorJustin Squirek <squirek@adacore.com>
Tue, 29 Jun 2021 22:38:09 +0000 (18:38 -0400)
committerPierre-Marie de Rodat <derodat@adacore.com>
Mon, 4 Oct 2021 08:45:13 +0000 (08:45 +0000)
commit5e0367dd64f4946d76477a8545d7abf3c0802806
tree0be6ee1aab23b667ba995e983485136ecb48f117
parent29ca68773b8bbb89b6e0cbb21d55d0ceeec58f9c
[Ada] Incremental patch for restriction No_Dynamic_Accessibility_Checks

gcc/ada/

* doc/gnat_rm/standard_and_implementation_defined_restrictions.rst:
Add new entry for No_Dynamic_Accessibility_Checks documenting
behavior.
* gnat_rm.texi: Regenerate.
* exp_ch4.adb (Expand_N_In): Perform special expansion for
membership tests when No_Dynamic_Accessibility_Checks is active.
* sem_attr.adb (Resolve_Attribute): Skip static accessibility
check on actuals for anonymous access type formal parameters,
and add constants for readability.
* sem_util.adb (Function_Call_Or_Allocator_Level): Use the
innermost master for determining the level for function calls
within the alternative accessibility model.
(Type_Access_Level): Properly get the level for anonymous access
function result types.
gcc/ada/doc/gnat_rm/standard_and_implementation_defined_restrictions.rst
gcc/ada/exp_ch4.adb
gcc/ada/gnat_rm.texi
gcc/ada/sem_attr.adb
gcc/ada/sem_util.adb