diff options
author | Ed Schonberg <schonberg@adacore.com> | 2019-07-05 07:02:32 +0000 |
---|---|---|
committer | Pierre-Marie de Rodat <pmderodat@gcc.gnu.org> | 2019-07-05 07:02:32 +0000 |
commit | 7145d799a347800ea6ef5c5e3114db11469137a8 (patch) | |
tree | d874d49dca886c171bfa46dd98eb0ce2947fbdf6 /gcc/tree-ssa-ifcombine.c | |
parent | de70d01f1a3f52654d39ecb97bd769032e5e2a60 (diff) | |
download | gcc-7145d799a347800ea6ef5c5e3114db11469137a8.zip gcc-7145d799a347800ea6ef5c5e3114db11469137a8.tar.gz gcc-7145d799a347800ea6ef5c5e3114db11469137a8.tar.bz2 |
[Ada] Spurious error on aggregate with choice that is predicted subtype
This patch fixes a spurious error on a record aggregate for a variant
record when a choice in the aggregate is given by a subtype with a
static predicate. The same expansion mechanism for such a variant, used
in case statements, must be used here as well.
2019-07-05 Ed Schonberg <schonberg@adacore.com>
gcc/ada/
* sem_util.adb (Encloing_Subprogram): If Enclosing_Dynamic_Scope
is a loop, continue climbing the scope stack to find the
enclosing subprogram.
(Gather_Components): Handle properly a choice in a record
aggregate that is given by a subtype with a static predicate.
gcc/testsuite/
* gnat.dg/aggr25.adb, gnat.dg/aggr25.ads: New testcase.
From-SVN: r273112
Diffstat (limited to 'gcc/tree-ssa-ifcombine.c')
0 files changed, 0 insertions, 0 deletions