From 924b2450262392778ecd8c0e637f6abaefd81094 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Mon, 13 Jun 2005 19:20:22 +0000 Subject: re PR java/21844 (miscompilation of LinkedHashMap) PR java/21844: * parse.y (nested_field_access_p): Handle case where outer field is inherited by enclosing class. From-SVN: r100893 --- gcc/java/parse.y | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'gcc/java/parse.y') diff --git a/gcc/java/parse.y b/gcc/java/parse.y index ebaede8..1108719 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -8389,13 +8389,6 @@ nested_field_access_p (tree type, tree decl) { if (type_root == decl_type) return 1; - - /* Before we give up, see whether it is a non-static field - inherited from the enclosing context we are considering. */ - if (!DECL_CONTEXT (TYPE_NAME (type_root)) - && !is_static - && inherits_from_p (type_root, decl_type)) - return 1; } if (TREE_CODE (decl_type) == RECORD_TYPE @@ -8416,6 +8409,13 @@ nested_field_access_p (tree type, tree decl) if (type_root == decl_type_root) return 1; + /* Before we give up, see whether it is a non-static field + inherited from the enclosing context we are considering. */ + if (!DECL_CONTEXT (TYPE_NAME (type_root)) + && !is_static + && inherits_from_p (type_root, decl_type)) + return 1; + return 0; } -- cgit v1.1