diff options
author | Justin Squirek <squirek@adacore.com> | 2022-03-24 18:42:09 +0000 |
---|---|---|
committer | Pierre-Marie de Rodat <derodat@adacore.com> | 2022-07-04 07:45:52 +0000 |
commit | ddd88925273e86018b6cf57c9f6acc798a38e112 (patch) | |
tree | b8ba74a459a71abd5b2995a6e4d7eeb175a601dc /gcc/gimple-loop-jam.cc | |
parent | bdd5056736b642f0124e6cb26f9c2fd8be028908 (diff) | |
download | gcc-ddd88925273e86018b6cf57c9f6acc798a38e112.zip gcc-ddd88925273e86018b6cf57c9f6acc798a38e112.tar.gz gcc-ddd88925273e86018b6cf57c9f6acc798a38e112.tar.bz2 |
[Ada] Incorrect accessibility check on return of discriminated type
This patch corrects an error in the compiler whereby the presence of a
call to a function returning a type with an access discriminant within
an expanded loop condition caused the wrong value to be supplied for the
extra- accessibility-of-result actual, thus causing incorrect checks
within the callee at the point of return.
This change also corrects a problem where spurious "null value not
allowed" warnings were generated for tagged type declarations with an
access discriminant specified as "null."
gcc/ada/
* sem_disp.adb (Most_Descendant_Use_Clause): Remove call to
deprecated Is_Internal.
* sem_util.adb (Innermost_Master_Scope_Depth): Use
Find_Enclosing_Scope instead of Nearest_Dynamic_Scope to avoid
cases where relevant scopes get skipped leading to an incorrect
scope depth calculation.
Diffstat (limited to 'gcc/gimple-loop-jam.cc')
0 files changed, 0 insertions, 0 deletions