diff options
author | Ed Schonberg <schonberg@adacore.com> | 2019-08-13 08:08:40 +0000 |
---|---|---|
committer | Pierre-Marie de Rodat <pmderodat@gcc.gnu.org> | 2019-08-13 08:08:40 +0000 |
commit | cffb8f959c237b5af9e94ad4d0188a34acf5d910 (patch) | |
tree | 18bb05f70bc117e2914071be092fac67bcf7aef9 /gcc/fortran/check.c | |
parent | 7f078d5b3e3ae2cdf527e6a163edd73238726a80 (diff) | |
download | gcc-cffb8f959c237b5af9e94ad4d0188a34acf5d910.zip gcc-cffb8f959c237b5af9e94ad4d0188a34acf5d910.tar.gz gcc-cffb8f959c237b5af9e94ad4d0188a34acf5d910.tar.bz2 |
[Ada] Legality rule on ancestors of type extensions in generic bodies
This patch adds an RM reference for the rule that in a generic body a
type extension cannot have ancestors that are generic formal types. The
patch also extends the check to interface progenitors that may appear in
a derived type declaration or private extension declaration.
2019-08-13 Ed Schonberg <schonberg@adacore.com>
gcc/ada/
* sem_ch3.adb (Check_Generic_Ancestor): New subprogram,
aubsidiary to Build_Derived_Record_Type. to enforce the rule
that a type extension declared in a generic body cznnot have an
ancestor that is a generic formal (RM 3.9.1 (4/2)). The rule
applies to all ancestors of the type, including interface
progenitors.
gcc/testsuite/
* gnat.dg/tagged4.adb: New testcase.
From-SVN: r274358
Diffstat (limited to 'gcc/fortran/check.c')
0 files changed, 0 insertions, 0 deletions