Andrew Haley <aph@cambridge.redhat.com>

2002-03-22  Tom Tromey  <tromey@redhat.com>

	Andrew Haley  <aph@cambridge.redhat.com>

	* expr.c (build_field_ref): Don't build a check if the field is a
	member of `this'.

From-SVN: r51213
This commit is contained in:
Tom Tromey 2002-03-23 01:19:40 +00:00 committed by Tom Tromey
parent b216cd4ae3
commit c58408bf8d
2 changed files with 12 additions and 1 deletions

View File

@ -1,3 +1,10 @@
2002-03-22 Tom Tromey <tromey@redhat.com>
Andrew Haley <aph@cambridge.redhat.com>
* expr.c (build_field_ref): Don't build a check if the field is a
member of `this'.
2002-03-21 Eric Blake <ebb9@email.byu.edu>
Fix for PR java/6026:

View File

@ -1582,6 +1582,10 @@ build_field_ref (self_value, self_class, name)
}
else
{
int check = (flag_check_references
&& ! (DECL_P (self_value)
&& DECL_NAME (self_value) == this_identifier_node));
tree base_handle_type = promote_type (base_class);
if (base_handle_type != TREE_TYPE (self_value))
self_value = fold (build1 (NOP_EXPR, base_handle_type, self_value));
@ -1589,7 +1593,7 @@ build_field_ref (self_value, self_class, name)
self_value = unhand_expr (self_value);
#endif
self_value = build_java_indirect_ref (TREE_TYPE (TREE_TYPE (self_value)),
self_value, flag_check_references);
self_value, check);
return fold (build (COMPONENT_REF, TREE_TYPE (field_decl),
self_value, field_decl));
}