2005-09-01 Ed Schonberg <schonberg@adacore.com>
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 5 Sep 2005 08:01:04 +0000 (08:01 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 5 Sep 2005 08:01:04 +0000 (08:01 +0000)
commit9a5f69a3f577f5abe3993754099eef5bc5e842a1
tree66bcd84806d8f45a940000c3b712a12ca87ecd1a
parentf229c74b37e3ea2faa66e8ef8eda9795b1a81fda
2005-09-01  Ed Schonberg  <schonberg@adacore.com>
    Javier Miranda  <miranda@adacore.com>

* sem_ch4.adb (Transform_Object_Operation): In a context off the form
V (Obj.F), the rewriting does not involve the indexed component, but
only the selected component itself.
Do not apply the transformation if the analyzed node is an actual of a
call to another subprogram.
(Complete_Object_Operation): Retain the entity of the
dispatching operation in the selector of the rewritten node. The
entity will be used in the expansion of dispatching selects.
(Analyze_One_Call): Improve location of the error message associated
with interface.
(Analyze_Selected_Component): No need to resolve prefix when it is a
function call, resolution is done when parent node is resolved, as
usual.
(Analyze_One_Call): Add a flag to suppress analysis of the first actual,
when attempting to resolve a call transformed from its object notation.
(Try_Object_Operation, Transform_Object_Operastion): Avoid makind copies
of the argument list for each interpretation of the operation.
(Try_Object_Operation): The designated type of an access parameter may
be an incomplete type obtained through a limited_with clause, in which
case the primitive operations of the type are retrieved from its full
view.
(Analyze_Call): If this is an indirect call, and the return type of the
access_to_subprogram is incomplete, use its full view if available.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@103882 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ada/sem_ch4.adb