diff options
author | Ed Schonberg <schonberg@adacore.com> | 2018-06-11 09:19:02 +0000 |
---|---|---|
committer | Pierre-Marie de Rodat <pmderodat@gcc.gnu.org> | 2018-06-11 09:19:02 +0000 |
commit | 20643f5032f7f3c11a233861e05f8efb4059e9dd (patch) | |
tree | baa878b90794ed360933fdeb99521c2938fdfc33 /gcc/fortran/interface.c | |
parent | 577b1ab4b158ba501df6c6b721b83043fc26cbff (diff) | |
download | gcc-20643f5032f7f3c11a233861e05f8efb4059e9dd.zip gcc-20643f5032f7f3c11a233861e05f8efb4059e9dd.tar.gz gcc-20643f5032f7f3c11a233861e05f8efb4059e9dd.tar.bz2 |
[Ada] Missing predicate function body for derived type in nested package
This patch fixes a bug in the construction of predicate functions. For a
derived type, we must ensure that the parent type is already frozen so that its
predicate function has been constructed already. This is necessary if the
parent is declared in a nested package and its own freeze point has not been
reached when the derived type is frozen by a local object declaration.
2018-06-11 Ed Schonberg <schonberg@adacore.com>
gcc/ada/
* sem_ch13.adb (Build_Predicate_Functions): For a derived type, ensure
that its parent is already frozen so that its predicate function, if
any, has already been constructed.
gcc/testsuite/
* gnat.dg/predicate1.adb: New testcase.
From-SVN: r261422
Diffstat (limited to 'gcc/fortran/interface.c')
0 files changed, 0 insertions, 0 deletions