r266130 - in /trunk/gcc: ada/ChangeLog ada/exp_...

pmderodat@gcc.gnu.org pmderodat@gcc.gnu.org
Wed Nov 14 11:42:00 GMT 2018


Author: pmderodat
Date: Wed Nov 14 11:42:10 2018
New Revision: 266130

URL: https://gcc.gnu.org/viewcvs?rev=266130&root=gcc&view=rev
Log:
[Ada] Crash on interface equality covered by a renaming declaration

The frontend crashes processing a tagged type that implements an
interface which has an equality primitive (that is, "=") and covers such
primitive by means of a renaming declaration.

2018-11-14  Javier Miranda  <miranda@adacore.com>

gcc/ada/

	* exp_disp.adb (Expand_Interface_Thunk): Extend handling of
	renamings of the predefined equality primitive.
	(Make_Secondary_DT): When calling Expand_Interface_Thunk() pass
	it the primitive, instead of its Ultimate_Alias; required to
	allow the called routine to identify renamings of the predefined
	equality operation.

gcc/testsuite/

	* gnat.dg/equal5.adb, gnat.dg/equal5.ads: New testcase.

Added:
    trunk/gcc/testsuite/gnat.dg/equal5.adb
    trunk/gcc/testsuite/gnat.dg/equal5.ads
Modified:
    trunk/gcc/ada/ChangeLog
    trunk/gcc/ada/exp_disp.adb
    trunk/gcc/testsuite/ChangeLog



More information about the Gcc-cvs mailing list