diff options
author | Alexandre Petit-Bianco <apbianco@gcc.gnu.org> | 2000-07-20 17:01:43 -0700 |
---|---|---|
committer | Alexandre Petit-Bianco <apbianco@gcc.gnu.org> | 2000-07-20 17:01:43 -0700 |
commit | 4dbf4496573255460757de76bb8347669196587c (patch) | |
tree | f3e7044d39e99e82b097d95cb4c440ce2d639c9f /gcc/java/java-tree.h | |
parent | c59ff527c551ccc7cf500e3095d2b7b111d6c907 (diff) | |
download | gcc-4dbf4496573255460757de76bb8347669196587c.zip gcc-4dbf4496573255460757de76bb8347669196587c.tar.gz gcc-4dbf4496573255460757de76bb8347669196587c.tar.bz2 |
[multiple changes]
2000-07-13 Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (patch_method_invocation): Fixed comment.
(maybe_use_access_method): Build this$<n>s to the context of the
target method, or a type that extends it. Fixes gcj/242.
2000-07-13 Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (not_accessible_p): Access granted to innerclasses
(indirectly) extending the reference type. Fixes gcj/249.
2000-07-10 Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (resolve_qualified_expression_name): Verify qualified
access to `this.' Fixes gcj/239.
2000-07-10 Alexandre Petit-Bianco <apbianco@cygnus.com>
* class.c (set_super_info): Handled protected inner classes.
(common_enclosing_context_p): Bail early if arguments aren't both
inner classes.
(get_access_flags_from_decl): Handle private and protected inner
classes.
* java-tree.h (TYPE_PROTECTED_INNER_CLASS): New macro.
(CLASS_PROTECTED): Likewise.
(struct lang_type): New bitfield `poic.'
* parse.y (jdep_resolve_class): Call check_inner_class_access on
inner classes only.
(check_inner_class_access): Renamed arguments, added
comments. Handles protected inner classes (fixes gcj/225)
(not_accessible_p): Fixed comments. Avoid handling inner classes.
2000-07-07 Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (resolve_qualified_expression_name): Handle inner class
access. Fixes gcj/256.
(Fixes gcj/242, gcj/249, gcj/239, gcj/225 and gcj/256:
http://gcc.gnu.org/ml/gcc-patches/2000-07/msg00801.html)
From-SVN: r35156
Diffstat (limited to 'gcc/java/java-tree.h')
-rw-r--r-- | gcc/java/java-tree.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h index 5d132be..07a5521 100644 --- a/gcc/java/java-tree.h +++ b/gcc/java/java-tree.h @@ -576,6 +576,7 @@ struct lang_decl_var for non primitive types when compiling to bytecode. */ #define TYPE_DOT_CLASS(T) (TYPE_LANG_SPECIFIC(T)->dot_class) #define TYPE_PRIVATE_INNER_CLASS(T) (TYPE_LANG_SPECIFIC(T)->pic) +#define TYPE_PROTECTED_INNER_CLASS(T) (TYPE_LANG_SPECIFIC(T)->poic) struct lang_type { @@ -591,6 +592,7 @@ struct lang_type compiling to bytecode to implement <non_primitive_type>.class */ unsigned pic:1; /* Private Inner Class. */ + unsigned poic:1; /* Protected Inner Class. */ }; #ifdef JAVA_USE_HANDLES @@ -840,6 +842,7 @@ struct rtx_def * java_lang_expand_expr PARAMS ((tree, rtx, enum machine_mode, #define CLASS_SUPER(DECL) DECL_LANG_FLAG_6 (DECL) #define CLASS_STATIC(DECL) DECL_LANG_FLAG_7 (DECL) #define CLASS_PRIVATE(DECL) (TYPE_PRIVATE_INNER_CLASS (TREE_TYPE (DECL))) +#define CLASS_PROTECTED(DECL) (TYPE_PROTECTED_INNER_CLASS (TREE_TYPE (DECL))) /* @deprecated marker flag on methods, fields and classes */ |