[Ada] Internal error on iterator for limited private discriminated type

Programming / Compilers / GCC - pmderodat [138bc75d-0d04-0410-961f-82ee72b054a4] - 22 July 2019 13:57 EDT

This patch further extends the short-circuit, aka optimization, present in the Check_Constrained_Object procedure used for renaming declarations to all limited types, so as to prevent type mismatches downstream in more cases.

2019-07-22 Eric Botcazou

gcc/ada/

- sem_ch8.adb (Check_Constrained_Object): Further extend the special optimization to all limited types.

gcc/testsuite/

- gnat.dg/iter5.adb, gnat.dg/iter5_pkg.ads: New testcase.

e6368760e65 [Ada] Internal error on iterator for limited private discriminated type
gcc/ada/ChangeLog | 5 ++
gcc/ada/sem_ch8.adb | 10 +--
gcc/testsuite/ChangeLog | 4 ++
gcc/testsuite/gnat.dg/iter5.adb | 10 +++
gcc/testsuite/gnat.dg/iter5_pkg.ads | 127 ++++++++++++++++++++++++++++++++++++
5 files changed, 148 insertions(+), 8 deletions(-)

Upstream: gcc.gnu.org


  • Share