diff options
author | Alexandre Petit-Bianco <apbianco@cygnus.com> | 1998-12-03 17:53:02 +0000 |
---|---|---|
committer | Alexandre Petit-Bianco <apbianco@gcc.gnu.org> | 1998-12-03 09:53:02 -0800 |
commit | 1886c9d8361f7ba8931501dd8658026f5b3afcdd (patch) | |
tree | 6d202291abbf1bce63f1d1a56ad31396e3086b50 /gcc/java/parse.h | |
parent | 2036a15c6d3583a413934700c527ae626be01075 (diff) | |
download | gcc-1886c9d8361f7ba8931501dd8658026f5b3afcdd.zip gcc-1886c9d8361f7ba8931501dd8658026f5b3afcdd.tar.gz gcc-1886c9d8361f7ba8931501dd8658026f5b3afcdd.tar.bz2 |
java-tree.h (java_layout_seen_class_methods): New function prototype.
Thu Dec 3 17:11:12 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
* java-tree.h (java_layout_seen_class_methods): New function
prototype.
(LAYOUT_SEEN_CLASS_METHODS): Macro removed.
* jcf-parse.c (parse_class_file): Call java_layout_seen_class_methods.
* parse.h (PROMOTE_RECORD_IF_COMPLETE): New macro.
* parse.y (method_declarator:): Defined action.
(issue_warning_error_from_context): input_filename saved, set to
the appropriate value and restored after java_error is called.
(build_unresolved_array_type): Fixed comment.
(register_fields): Use PROMOTE_RECORD_IF_COMPLETE.
(method_header): Deal with return type the same way type are
handled for fields and method's parameters and local variables
types are handled.
(check_method_redefinition): Removed extra CR.
(declare_local_variables): Use PROMOTE_RECORD_IF_COMPLETE.
(java_layout_seen_class_methods): New function.
(java_layout_classes): Call java_layout_seen_class_methods.
Handles an obsolete way of declaring methods returning an array. Does
a better job at laying out class methods before code generation.
From-SVN: r24077
Diffstat (limited to 'gcc/java/parse.h')
-rw-r--r-- | gcc/java/parse.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/java/parse.h b/gcc/java/parse.h index fa475af..79c6c78b 100644 --- a/gcc/java/parse.h +++ b/gcc/java/parse.h @@ -444,6 +444,12 @@ static jdeplist *reverse_jdep_list (); } \ } \ } +/* Promote a type if it won't be registered as a patch */ +#define PROMOTE_RECORD_IF_COMPLETE(TYPE, IS_INCOMPLETE) \ + { \ + if (!(IS_INCOMPLETE) && TREE_CODE (TYPE) == RECORD_TYPE) \ + (TYPE) = promote_type (TYPE); \ + } /* Insert a DECL in the current block */ #define BLOCK_CHAIN_DECL(NODE) \ |