aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sem_ch3.adb
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2023-02-15 15:52:00 +0100
committerMarc Poulhiès <poulhies@adacore.com>2023-05-23 09:59:04 +0200
commit674ab59dc50bec6987f133424e4c5a1c5ba52e61 (patch)
tree0fb93c7a0a30b6320b9cfd78b4a6918c31ab7c93 /gcc/ada/sem_ch3.adb
parentea5a7a774a2d5d2759f45c77efa17a91182e614f (diff)
downloadgcc-674ab59dc50bec6987f133424e4c5a1c5ba52e61.zip
gcc-674ab59dc50bec6987f133424e4c5a1c5ba52e61.tar.gz
gcc-674ab59dc50bec6987f133424e4c5a1c5ba52e61.tar.bz2
ada: Fix internal error on quantified expression with predicated type
The problem is that the special function created by the compiler to check the predicate does not inherit the public status of the type, because it is generated as part of the freezing of the quantified expression, which occurs from within a couple of intermediate internal scopes. gcc/ada/ * sem_ch13.adb (Build_Predicate_Function_Declaration): Adjust the commentary to the current implementation. * sem_util.ads (Current_Scope_No_Loops): Move around. (Current_Scope_No_Loops_No_Blocks): New declaration. (Add_Block_Identifier): Fix formatting. * sem_util.adb (Add_Block_Identifier): Likewise. (Current_Scope_No_Loops_No_Blocks): New function. (Set_Public_Status): Call Current_Scope_No_Loops_No_Blocks instead of Current_Scope to get the current scope.
Diffstat (limited to 'gcc/ada/sem_ch3.adb')
0 files changed, 0 insertions, 0 deletions