[Ada] Unnesting: do not eliminate subprogram whose address is taken
authorEd Schonberg <schonberg@adacore.com>
Tue, 11 Dec 2018 11:12:21 +0000 (11:12 +0000)
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Tue, 11 Dec 2018 11:12:21 +0000 (11:12 +0000)
commitc13269965084ccb19233411164b52c7f187a5fb6
tree5a7082978db677b3f2f747204dd384466001007d
parent2f42b6ead47da2c5d863042de6689aee64d342b3
[Ada] Unnesting: do not eliminate subprogram whose address is taken

2018-12-11  Ed Schonberg  <schonberg@adacore.com>

gcc/ada/

* exp_unst.adb (Register_Subprogram): A subprogram whose address
is taken (through attribute Address or Access) is reachable and
cannot be eliminated, even if there is no explicit call to it:
the address may be used in an indirect call or in some
address-related operation.

From-SVN: r267014
gcc/ada/ChangeLog
gcc/ada/exp_unst.adb