trans.c (call_to_gnu): Return an expression with a COMPOUND_EXPR including the call instead of...
2007-04-06 Olivier Hainque <hainque@adacore.com> Eric Botcazou <botcazou@adacore.com> * trans.c (call_to_gnu) <TYPE_RETURNS_BY_TARGET_PTR_P>: Return an expression with a COMPOUND_EXPR including the call instead of emitting the call directly here. (gnat_to_gnu) <N_Slice>: Do not return a non-constant low bound if the high bound is constant and the slice is empty. Tidy. (tree_transform, case N_Op_Not): Handle properly the case where the operation applies to a private type whose full view is a modular type. (Case_Statement_To_gnu): If an alternative is an E_Constant with an Address_Clause, use the associated Expression as the GNAT tree representing the choice value to ensure the corresponding GCC tree is of the proper kind. (maybe_stabilize_reference): Stabilize COMPOUND_EXPRs as a whole instead of just the operands, as the base GCC stabilize_reference does. <CALL_EXPR>: New case. Directly stabilize the call if an lvalue is not requested; otherwise fail. (addressable_p) <COMPONENT_REF>: Do not test DECL_NONADDRESSABLE_P. From-SVN: r123608
Showing
This diff is collapsed.
Click to expand it.
Please
register
or
sign in
to comment