[Ada] Crash on illegal left-hand side in assignment of renamed variable
authorEd Schonberg <schonberg@adacore.com>
Mon, 12 Aug 2019 09:01:43 +0000 (09:01 +0000)
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Mon, 12 Aug 2019 09:01:43 +0000 (09:01 +0000)
commit8e4ca4fcffbe6d3855f67cd02e0bb2a40d62fa10
tree27d718c27b20a3167293c49845c134957c325ed9
parentfba9fcae321660fdc760fd293d92970e52489706
[Ada] Crash on illegal left-hand side in assignment of renamed variable

This patch fixes a crash on an assignment where the left-hand side is a
renaming of a function call that does not involve ceiling priorities.
This avoids a compiler crash in some cases, and prevents a useless
retrieval and compilation of run-time packages.

2019-08-12  Ed Schonberg  <schonberg@adacore.com>

gcc/ada/

* sem_util.adb (Is_Expaned_Priority_Attribute): Check whether
call comes from a rewritten attribute before comparing name with
Get_Ceiling run-time subprogram.

gcc/testsuite/

* gnat.dg/renaming15.adb: New testcase.

From-SVN: r274305
gcc/ada/ChangeLog
gcc/ada/sem_util.adb
gcc/testsuite/ChangeLog
gcc/testsuite/gnat.dg/renaming15.adb [new file with mode: 0644]