decl.c (gnat_to_gnu_entity): Rework comment.

2005-03-29  Eric Botcazou  <ebotcazou@adacore.com>

	* decl.c (gnat_to_gnu_entity) <E_Variable>: Rework comment.
	* trans.c (tree_transform) <N_Identifier>: Use correct predicates.

From-SVN: r97191
This commit is contained in:
Eric Botcazou 2005-03-29 18:23:29 +02:00 committed by Arnaud Charlet
parent bf7c85c928
commit 1197b8ba5c
2 changed files with 7 additions and 9 deletions

View File

@ -776,13 +776,12 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition)
}
/* Otherwise, make this into a constant pointer to the object we
are to rename.
Stabilize it since in this case the renaming evaluation may
directly dereference the initial value we make here instead
of the pointer we will assign it to. We don't want variables
in the expression to be evaluated every time the renaming is
used, since their value may change in between. */
are to rename and attach the object to the pointer. We need
to stabilize too since the renaming evaluation may directly
reference the renamed object instead of the pointer we will
attach it to. We don't want variables in the expression to
be evaluated every time the renaming is used, since their
value may change in between. */
else
{
bool has_side_effects = TREE_SIDE_EFFECTS (gnu_expr);

View File

@ -410,8 +410,7 @@ Identifier_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p)
&& (! DECL_RENAMING_GLOBAL_P (gnu_result)
|| global_bindings_p ())
/* Make sure it's an lvalue like INDIRECT_REF. */
&& (TREE_CODE_CLASS (TREE_CODE (renamed_obj)) == 'd'
|| TREE_CODE_CLASS (TREE_CODE (renamed_obj)) == 'r'))
&& (DECL_P (renamed_obj) || REFERENCE_CLASS_P (renamed_obj)))
gnu_result = renamed_obj;
else
gnu_result = build_unary_op (INDIRECT_REF, NULL_TREE,