[Ada] Crash in tagged type constructor with task components
authorJavier Miranda <miranda@adacore.com>
Thu, 16 Apr 2020 15:06:31 +0000 (11:06 -0400)
committerPierre-Marie de Rodat <derodat@adacore.com>
Wed, 17 Jun 2020 08:14:18 +0000 (04:14 -0400)
commit765005dd6791889af2731073bb7c5f6305d14f01
tree13c5a99380af84a166f21ac4f0965bdd34f21419
parentda901811dc478d45e7dc1028dce0bda8abbbee65
[Ada] Crash in tagged type constructor with task components

2020-06-17  Javier Miranda  <miranda@adacore.com>

gcc/ada/

* exp_ch6.adb (Has_BIP_Extra_Formal): New subprogram.
(Needs_BIP_Task_Actuals): Add support for the subprogram type
internally generated for dispatching calls.
* exp_disp.adb (Expand_Dispatching_Call): Adding code to
explicitly duplicate the extra formals of the target subprogram.
* freeze.adb (Check_Extra_Formals): New subprogram.
(Freeze_Subprogram): Fix decoration of Extra_Formals.
* sem_ch3.adb (Derive_Subprogram): Fix decoration of
Extra_Formals.
gcc/ada/exp_ch6.adb
gcc/ada/exp_disp.adb
gcc/ada/freeze.adb
gcc/ada/sem_ch3.adb