exp_ch5.adb (Controlled_Type): New routine.
authorHristian Kirtchev <kirtchev@adacore.com>
Wed, 20 Aug 2008 14:27:59 +0000 (16:27 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Wed, 20 Aug 2008 14:27:59 +0000 (16:27 +0200)
commit3ad80e57f8ba044c1217d50f2a03a67d2a20ec5d
tree08f1ae56470746f8cd921c45fafb71c081b5efc5
parentdeff3e5e46d740c9b857bf96daf9f9206bd22ea7
exp_ch5.adb (Controlled_Type): New routine.

2008-08-20  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch5.adb (Controlled_Type): New routine.
(Expand_N_Extended_Return_Statement): When generating a move of the
final list in extended return statements, check the type of the
function and in the case of double expanded return statements, the type
of the returned object.
(Expand_Simple_Function_Return): Perform an interface conversion when
the type of the returned object is an interface and the context is an
extended return statement.

From-SVN: r139305
gcc/ada/exp_ch5.adb