diff options
author | Alexandre Petit-Bianco <apbianco@redhat.com> | 2001-04-05 15:59:12 -0700 |
---|---|---|
committer | Alexandre Petit-Bianco <apbianco@gcc.gnu.org> | 2001-04-05 15:59:12 -0700 |
commit | 73c299fc2276884f695006a361aac9450f1671da (patch) | |
tree | 9d4743d71e75362eb9798fa906a94ca8f810cf3f /gcc/java/java-tree.h | |
parent | 864e133c3cb393bf06302f3f580c9c91ffe95f89 (diff) | |
download | gcc-73c299fc2276884f695006a361aac9450f1671da.zip gcc-73c299fc2276884f695006a361aac9450f1671da.tar.gz gcc-73c299fc2276884f695006a361aac9450f1671da.tar.bz2 |
re PR java/1315 (Inner class initializer crash)
2001-04-04 Alexandre Petit-Bianco <apbianco@redhat.com>
* java-tree.h (struct lang_decl): New macro
`DECL_FIXED_CONSTRUCTOR_P.' New field `fixed_ctor.'
* parse.y (build_instance_initializer): New function.
(add_instance_initializer): Use it.
(java_fix_constructors): Set `current_class' before fix pass.
(fix_constructors): Just return if already fixed. Move `super()'
invokation ahead. Use `build_instance_initializer.'
Fixes PR java/1315.
(http://gcc.gnu.org/ml/gcc-patches/2001-04/msg00343.html)
From-SVN: r41129
Diffstat (limited to 'gcc/java/java-tree.h')
-rw-r--r-- | gcc/java/java-tree.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h index 95cd99c..0163b49 100644 --- a/gcc/java/java-tree.h +++ b/gcc/java/java-tree.h @@ -715,6 +715,7 @@ struct lang_identifier /* True if DECL initializes all its finals */ #define DECL_FUNCTION_ALL_FINAL_INITIALIZED(DECL) \ (DECL_LANG_SPECIFIC(DECL)->init_final) +#define DECL_FIXED_CONSTRUCTOR_P(DECL) (DECL_LANG_SPECIFIC(DECL)->fixed_ctor) /* True when DECL aliases an outer context local variable. */ #define FIELD_LOCAL_ALIAS(DECL) DECL_LANG_FLAG_6 (DECL) @@ -864,6 +865,7 @@ struct lang_decl int native : 1; /* Nonzero if this is a native method */ int synthetic_ctor : 1; /* Nonzero if this is a synthetic ctor */ int init_final : 1; /* Nonzero all finals are initialized */ + int fixed_ctor : 1; }; /* init_test_table hash table entry structure. */ |