OSDN Git Service

Sat Apr 24 16:50:19 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
authorapbianco <apbianco@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 26 Apr 1999 19:09:37 +0000 (19:09 +0000)
committerapbianco <apbianco@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 26 Apr 1999 19:09:37 +0000 (19:09 +0000)
commitdaa0662441a793a41cc20125214d4c07bf9562d4
tree38ae2203c1adb1c12229db14df3792c799011465
parent2ea43938d267c4a864f8726e59133fdb8beb178e
Sat Apr 24 16:50:19 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
* class.c (layout_class_method): Generate <clinit>'s rtl for
  interfaces.
* decl.c (complete_start_java_method): Don't call _Jv_InitClass
  for interfaces' <clinit>.
* expr.c (lookup_field): Search for fields in interfaces.
(expand_invoke): Fixed indentation.
(expand_java_field_op): Likewise. Use IS_CLINIT.
* parse.h (JPRIMITIVE_TYPE_OR_VOID_P): Macro removed.
(IS_CLINIT): New macro.
* parse.y (type_declaration:): Call maybe_generate_clinit after an
  interface was parsed.
(maybe_generate_clinit): Don't generate if the current class is an
  interface with only fields of primitive types.
(reset_method_name): Use IS_CLINIT.
(java_complete_expand_method): Expand <clinit> when it exists for
  interfaces. Use IS_CLINIT.
(resolve_expression_name): Use DECL_CONTEXT instead of
  current_class to build static field references.
(java_complete_lhs): Use IS__CLINIT. Don't use SAVE_EXPR on
  ARRAY_REF when doing xreferencing.
(check_final_assignment): Fixed typo in leading comment. Use
  IS_CLINIT.
(patch_array_ref): Don't fully expand array references when
  xreferencing.
(patch_return): Use IS_CLINIT.
(patch_throw_statement): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26661 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/java/ChangeLog
gcc/java/class.c
gcc/java/decl.c
gcc/java/expr.c
gcc/java/parse.c
gcc/java/parse.h
gcc/java/parse.y