trans.c (create_temporary): New function taken from...
authorEric Botcazou <ebotcazou@adacore.com>
Wed, 23 Mar 2011 10:04:08 +0000 (10:04 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Wed, 23 Mar 2011 10:04:08 +0000 (10:04 +0000)
commitddb5a105e2252bd2494b523085c101495d59c53a
tree95fb7ad60a335d8a7918afcbb3f27c23c4dc83b2
parent3460fdf328976b9f328478e12e0c87c48091d33a
trans.c (create_temporary): New function taken from...

* gcc-interface/trans.c (create_temporary): New function taken from...
(create_init_temporary): ...here.  Call it.
(call_to_gnu): Create the temporary for the return value early, if any.
Create it for a function with copy-in/copy-out parameters if there is
no target; in other cases of copy-in/copy-out, use another temporary.
Push the new binding level lazily.  Add and rename local variables.

From-SVN: r171345
gcc/ada/ChangeLog
gcc/ada/gcc-interface/trans.c
gcc/testsuite/ChangeLog
gcc/testsuite/gnat.dg/discr26.adb [new file with mode: 0644]
gcc/testsuite/gnat.dg/discr26.ads [new file with mode: 0644]
gcc/testsuite/gnat.dg/discr26_pkg.ads [new file with mode: 0644]