X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fjava%2FChangeLog;h=093fc8fb089f59acdeeaac5d8e2c4c6b88d7341b;hb=72a6b07c4c8afddb3a5b5db4b1334a65dd713abf;hp=a9bcf444403843a188654c76de5e10d1aa299ccf;hpb=9b2d6d13808845e60fdd0047dcf2b626c641f75d;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index a9bcf444403..093fc8fb089 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,471 @@ +2005-11-08 Wil Mahan + + PR java/23617 + * zextract.c (read_zip_archive): Fix out of memory error when + reading jar files with zip-style comments. + +2005-11-07 Terry Laurenzo + + * gjavah.c (HANDLE_CODE_ATTRIBUTE): Only define for ELF Object + formats. + * gjavah.c (decompile_method): Add ATTRIBUTE_UNUSED + +2005-10-12 Nathan Sidwell + Wil Mahan + + PR java/23620 + * class.c (make_class): Create empty binfo here. + (set_super_info): Only create binfo if we have superclasses. + +2005-10-03 Ranjit Mathew + + PR java/24127 + * parse.y (method_header): Make the result of the rule a NULL_TREE + when a parsing error occurs. + +2005-09-29 Tom Tromey + + PR java/24120: + * jcf-io.c (memoized_dirlist_hash): New function. + (caching_stat): Use it. + +2005-09-21 Ranjit Mathew + + PR java/21418 + * class.c (inherits_from_p): Try to lay out super class + if it is not already laid out. + (maybe_layout_super_class): Handle the case where SUPER_CLASS + is a NULL_TREE. + +2005-09-18 James A. Morrison + + * builtins.c (max_builtin, min_builtin, abs_builtin, + java_build_function_call_expr): Use fold_buildN. + * class.c (layout_class_method): Likewise. + * expr.c (java_truthvalue_conversion, build_java_jsr, + build_java_arrayaccess, expand_java_arrayload, expand_iinc, + build_java_binop, build_field_ref, expand_compare, + build_known_method_ref, build_invokevirtual, + process_jvm_instruction): Likewise. + * parse.y (patch_binop, patch_exit_expr): Likewise. + * typeck.c (convert_ieee_real_to_integer): Likewise. + (convert): Don't call fold after convert_ieee_real_to_integer. + +2005-09-14 Bryce McKinlay + + PR java/23891 + * parse.y (maybe_create_class_interface_decl): Set TYPE_PACKAGE for + the newly created type. Set import lists here, not in create_class. + (jdep_resolve_class): Set current_class. + (do_resolve_class): Use current_class's TYPE_PACKAGE to determine + the current package context, not ctxp->package. + (cicp_cache): Removed. + (class_in_current_package): Simplify implementation using TYPE_PACKAGE. + * jcf-parse.c (give_name_to_class): Set TYPE_PACKAGE. + * java-tree.h (TYPE_PACKAGE): New macro. + (struct lang_type): New member 'package'. + +2005-09-09 Andrew Haley + + PR libgcj/23182 + * expr.c (pop_type_0): If the expected type is object or ptr + (i.e. void*), return the type of the object we just popped from + the stack. + +2005-09-06 Andrew Pinski + + * java-gimplify.c (java_gimplify_block): NULL out the old BLOCK's + BLOCK_EXPR_BODY before returning the new BIND_EXPR. + +2005-09-06 Kazu Hirata + + * check-init.c, decl.c, expr.c, gcj.texi, java-tree.h, + jcf-parse.c, jcf.h, parse.h, parse.y, typeck.c: Fix comment + typos. Follow spelling conventions. + +2005-09-05 Ranjit Mathew + + PR java/23431 + * typeck.c (lookup_do): Look up interfaces for the original class, + not the base class. + * parse.y (java_check_regular_methods): Fix diagnostic message for + more restrictive overriding of a method from an interface. + +2005-08-16 Tom Tromey + + * class.c (make_class_data): Always emit JV_STATE_PRELOADING for + class' initial state. + +2005-08-16 Ranjit Mathew + + PR java/22113 + * lex.c (do_java_lex): Define MAX_TOKEN_LEN. Avoid overflowing + `literal_token' for large numeric input tokens. + +2005-08-16 Ranjit Mathew + + PR java/19870 + * parse.y (nested_field_access_p): Rename to nested_member_access_p + and expand to handle method accesses across nested classes. + (build_outer_method_access_method): Rename to + build_nested_method_access_method. Minor adjustments to comments. + (resolve_expression_name): Use the newly-renamed + nested_member_access_p method. + (resolve_qualified_expression_name): Likewise. + (patch_method_invocation): Also consider static methods for access + method generation. Minor adjustments to comments. + (maybe_use_access_method): Use the more general + nested_memeber_access_p to determine access across nested class + boundaries. Allow THIS_ARG to be NULL (for static methods). + +2005-08-15 Tom Tromey + + PR java/23300. + * expr.c (build_field_ref): Don't generate otable reference when + DECL_FIELD_OFFSET is 0. + * class.c (maybe_layout_super_class): Pass outer class to + do_resolve_class. + +2005-08-15 Tom Tromey + + * java-tree.h (LABEL_IN_SUBR): Removed. + (LABEL_IN_SUBR): Likewise. + (LABEL_IS_SUBR_START): Likewise. + (LABEL_SUBR_START): Likewise. + (LABEL_SUBR_CONTEXT): Likewise. + (LABEL_CHANGED): Likewise. + (LABEL_RETURN_LABEL): Likewise. + (LABEL_RETURN_TYPE_STATE): Likewise. + (LABEL_RETURN_LABELS): Likewise. + (RETURN_MAP_ADJUSTED): Likewise. + (LABEL_PENDING_CHAIN): Likewise. + +2005-08-15 Tom Tromey + + * Make-lang.in (JAVA_OBJS): Removed verify.o + (java/verify.o): Removed. + * verify.c: Removed. + * lang.c (flag_new_verifier): Removed. + (java_post_options): Updated. + * java-tree.h (flag_new_verifier): Removed. + (verify_jvm_instructions): Removed. + * expr.c (pop_type_0): Assume flag_new_verifier is true. + (build_java_check_indexed_type): Likewise. + (expand_java_arraystore): Likewise. + (expand_java_arrayload): Likewise. + (pop_arguments): Likewise. + (expand_byte_code): Likewise. + (process_jvm_instruction): Likewise. + +2005-08-10 Andrew Haley + + * java-gimplify.c (java_gimplify_modify_expr): Fix any pointer + type mismatches to make legal GIMPLE. + +2005-08-10 Robin Green + + PR java/23230: + * parse.y (maybe_use_access_method): Generalize check from + java.lang.Object to any superclass of current_class + +2005-08-08 Nathan Sidwell + + * class.c (build_class_ref): Wrap the primary class type in a + NOP_EXPR. + * parse.y (java_complete_lhs) : Extract the + primary class type from the NOP_EXPR in which it was placed. + +2005-07-28 Diego Novillo + + * expr.c (expand_load_internal): Fix missing parens in + predicate. + +2005-07-28 Andrew Haley + + * expr.c (expand_load_internal): Convert to destination type. + +2005-07-22 Manfred Hollstein + + * verify-impl.c (check_class_constant): Fix uninitialised warnings. + (check_constant): Likewise. + (check_wide_constant): Likewise. + +2005-07-20 Giovanni Bajo + + Make CONSTRUCTOR use VEC to store initializers. + * check-init.c (check_init): Update to cope with VEC in + CONSTRUCTOR_ELTS. + * class.c (make_field_value, make_method_value, get_dispatch_table, + make_class_data, emit_symbol_table, emit_catch_table, + emit_assertion_table): Use build_constructor_from_list instead of + build_constructor. + * constants.c (build_constants_constructor): Likewise. + * java-gimplify.c (java_gimplify_new_array_init): Update to cope with + VEC in CONSTRUCTOR_ELTS. + * java-tree.h (START_RECORD_CONSTRUCTOR, PUSH_SUPER_VALUE, + PUSH_FIELD_VALUE, FINISH_RECORD_CONSTRUCTOR): Create a VEC instead + of a TREE_LIST. + * jcf-write.c (generate_bytecode_insns): Update to cope with VEC in + CONSTRUCTOR_ELTS. + * parse.y (build_new_array_init): Use build_constructor_from_list + instead of build_constructor. + (patch_new_array_init): Update to cope with VEC in + CONSTRUCTOR_ELTS. + (array_constructor_check_entry): Likewise. + +2005-07-12 Tom Tromey + + * jvspec.c (lang_specific_driver): Put filelist_filename first on + command line. + +2005-07-12 Tom Tromey + + PR java/19674: + * parse-scan.y (interface_member_declaration): Added + empty_statement. + +2005-07-08 Daniel Berlin + + * java-tree.h (LABEL_RETURN_LABELS): Use decl_non_common. + (LABEL_PENDING_CHAIN): Ditto. + (LABEL_PC): Ditto. + (DECL_BIT_INDEX): Ditto. + +2005-07-07 Bryce McKinlay + + PR java/18119 + * parse.y (inner_class_accessible): New function. Logic moved from + check_inner_class_access. + (check_inner_class_access): Use inner_class_accessible. + (resolve_inner_class): Simplify arguments. Create circularity hash + here. Keep looking for classes if we found one that was inaccessible. + Return the inaccessible class only if there is no other match. + (do_resolve_class): Update for new resolve_inner_class arguments. + Don't create circularity_hash here. + +2005-07-07 Bryce McKinlay + + PR java/21045 + * parse.y (add_exception_to_throws): New function. + (purge_unchecked_exceptions): Removed. + (get_constructor_super): Renamed from verify_constructor_super. Now + returns the super constructor after verification. + (java_complete_expand_method): Don't use purge_unchecked_exceptions + or save/restore the exception list. + (check_thrown_exceptions): Add uncaught exceptions in anonymous + class initializers and constructors to the throws clause of the method. + +2005-07-05 Bryce McKinlay + + PR java/19674 + * parse.y (interface_member_declaration): Allow empty statements in + interface declarations. + +2005-07-05 Paolo Bonzini + + * Makefile.in (parse.o): Adjust dependencies. + * parse.y: Include tree-dump.h. + +2005-07-02 Joseph S. Myers + + * class.c, decl.c, expr.c: Use '+' flag instead of %J. Use 'q' + flag for quoting. + +2005-07-01 Andrew Pinski + + * parse.y (issue_warning_error_from_context): Call + pp_output_formatted_text to be able to get the buffer. + +2005-06-30 Andrew Pinski + + * parse.y (issue_warning_error_from_context): Update for the + renaming of pp_format_text to pp_format. + +2005-06-28 Paul Brook + + * decl.c (java_init_decl_processing): Call + default_init_unwind_resume_libfunc. + +2005-06-27 Tom Tromey + + PR java/21540, PR java/13788: + * parse.y (java_complete_lhs) : Use + fold_constant_for_init. + (patch_binop): Added 'folding' argument. Updated all callers. + (patch_unaryop) : New case. + (fold_constant_for_init) : Likewise. + (fold_constant_for_init) : Fix sense of test. + +2005-06-25 Jan Hubicka + + * builtins.c (define_builtin): Accept new flags parameter. + (initialize_builtins): Mark the builtins const and nothrow accordingly. + +2005-06-25 Kelley Cook + + * all files: Update FSF address in copyright headers. + +2005-06-24 Tom Tromey + + * verify-impl.c (verify_instructions_0): Correctly handle + situation where PC falls off end. + +2005-06-23 Bryce McKinlay + + PR java/20697 + * parse.y (find_most_specific_methods_list): Remove special case for + inner classes. + +2005-06-15 Tom Tromey + + PR libgcj/21906: + * class.c (make_method_value): Use soft_abstractmethod_node for + abstract method. + * java-tree.h (soft_abstractmethod_node): New define. + (JTI_SOFT_ABSTRACTMETHOD_NODE): New enum constant. + * decl.c (java_init_decl_processing): Initialize + soft_abstractmethod_node. + +2005-06-13 Geoffrey Keating + + * Make-lang.in (rule for installing gcj.1): Depends on installdirs. + +2005-06-13 Per Bothner + + * expr.c (int highest_label_pc_this_method, + start_label_pc_this_method): New globals. + (lookup_label): Add start_label_pc_this_method to pc for label, and + update highest_label_pc_this_method. This prevents conflicts between + labels from different methods. + * java-tree.h: Declare new globals. + * jcf-parse.c (parse_class_file): If needed bump + start_label_pc_this_method and reset highest_label_pc_this_method. + +2005-06-13 Tom Tromey + + PR java/21844: + * parse.y (nested_field_access_p): Handle case where outer field + is inherited by enclosing class. + +2005-06-12 Per Bothner + + * class.c (inherits_from_p): Do load_class if needed. + +2005-06-09 Kaveh R. Ghazi + + * gjavah.c (error): Add ATTRIBUTE_PRINTF_1. + * java-tree.h (parse_error_context): Move... + * parse.h (parse_error_context): ... here, add ATTRIBUTE_GCC_DIAG. + * parse.y (parse_warning_context): Add ATTRIBUTE_GCC_DIAG. + * verify-impl.c (debug_print): Add ATTRIBUTE_PRINTF_1. + +2005-06-08 Roger Sayle + + * typeck.c (convert): Only clear TREE_OVERFLOW on INTEGER_CST nodes. + +2005-06-06 Jakub Jelinek + + * jv-scan.c (fatal_error, warning, warning0): Use gmsgid instead of + msgid for argument name. + * gjavah.c (error): Likewise. + * java-tree.h (parse_error_context): Likewise. + * parse.y (parse_error_context, parse_warning_context, + issue_warning_error_from_context): Likewise. + +2005-06-01 Tom Tromey + + PR java/21722: + * class.c (build_static_field_ref): Don't fold constant fields if + current class is from a .class file and we're using indirect + dispatch. + +2005-05-31 Kaveh R. Ghazi + + * java/verify-glue.c: Don't include errors.h and include toplev.h. + * java/Make-lang.in: Updates dependencies. + +2005-05-26 Ranjit Mathew + + PR java/19870. + * java-tree.h (OUTER_FIELD_ACCESS_IDENTIFIER_P): Rename to + NESTED_FIELD_ACCESS_IDENTIFIER_P. + (FIELD_INNER_ACCESS): Rename to FIELD_NESTED_ACCESS. + (FIELD_INNER_ACCESS_P): Rename to FIELD_NESTED_ACCESS_P. + * jcf-write.c (generate_classfile): Use + NESTED_FIELD_ACCESS_IDENTIFIER_P instead of + OUTER_FIELD_ACCESS_IDENTIFIER_P. + * parse.y (build_outer_field_access): Rename to + build_nested_field_access. Support static fields and outer-to-inner + class accesses. + (outer_field_access_p): Rename to nested_field_access_p. Support + static fields and generalise to outer-to-inner class and sibling + inner class accesses. + (outer_field_expanded_access_p): Rename to + nested_field_expanded_access_p and support static fields. + (outer_field_access_fix): Rename to nested_field_access_fix and + support static fields. + (build_outer_field_access_expr): Rename to + build_nested_field_access_expr and support static fields. + (build_outer_field_access_methods): Rename to + build_nested_field_access_methods and support static fields. For + static fields, generate accessors without class instance parameters. + (build_outer_field_access_method): Rename to + build_nested_field_access_method and support static fields. + (build_outer_method_access_method): Use + NESTED_FIELD_ACCESS_IDENTIFIER_P instead of + OUTER_FIELD_ACCESS_IDENTIFIER_P. + (resolve_expression_name): Consider static field accesses across + nested classes. + (resolve_qualified_expression_name): Likewise. + (java_complete_lhs): Use nested_field_access_fix instead of + outer_field_access_fix. + (patch_unary_op): Rename outer_field_flag to nested_field_flag. + Use nested_field_expanded_access_p instead of + outer_field_expanded_access_p. Use nested_field_access_fix instead + of outer_field_access_fix. + (check_thrown_exceptions): Use NESTED_FIELD_ACCESS_IDENTIFIER_P + instead of OUTER_FIELD_ACCESS_IDENTIFIER_P. + +2005-05-26 Bryce McKinlay + + * decl.c (GCJ_BINARYCOMPAT_ADDITION, + GCJ_BOOTSTRAP_LOADER_ADDITION): Removed. + (FLAG_BINARYCOMPAT_ABI, FLAG_BOOTSTRAP_LOADER, + MINOR_BINARYCOMPAT_ABI_VERSION): New. + (GCJ_CURRENT_BC_ABI_VERSION): Use new method to calculate version ID. + (parse_version): Calculate version ID using new method. Use bit-flags + for flag_indirect_dispatch and flag_bootstrap_classes. + +2005-05-25 Richard Henderson + + PR libgcj/21692 + * Make-lang.in (java/mangle.o): Depend on LANGHOOKS_DEF_H. + * class.c (build_class_ref): Set DECL_CLASS_FIELD_P and + DECL_CONTEXT; avoid pushdecl_top_level. + (build_dtable_decl): Set DECL_VTABLE_P and DECL_CONTEXT. + (layout_class): Don't SET_DECL_ASSEMBLER_NAME. + (layout_class_method): Likewise. + * decl.c (java_mark_cni_decl_local): New. + (java_mark_class_local): Use it. + * java-tree.h (DECL_LOCAL_CNI_METHOD_P): New. + (DECL_CLASS_FIELD_P, DECL_VTABLE_P): New. + (struct lang_decl_func): Add local_cni; + (struct lang_decl_var): Add class_field, vtable. + (java_mangle_decl): Declare. + * lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): New. + * mangle.c: Remove dup obstack.h; include langhooks-def.h. + (mangle_obstack_1): New. + (java_mangle_decl): Remove obstack argument. Call mangle_class_field, + mangle_vtable, and mangle_local_cni_method_decl. Fall back to + lhd_set_decl_assembler_name for things that don't need mangling. + (mangle_class_field): Rename from java_mangle_class_field, make + static, don't call init_mangling or finish_mangling. + (mangle_vtable): Similarly. + (mangle_local_cni_method_decl): New. + (init_mangling): Remove obstack argument. Use &mangle_obstack_1, + gcc_assert, and MANGLE_RAW_STRING. + (finish_mangling): Use gcc_assert, remove if 0 debugging code. + 2005-05-25 DJ Delorie * class.c (set_constant_value): Move warning control from if() to @@ -10421,7 +10889,7 @@ properly initialize `finished_label'. Don't emit gotos for empty try statements. -2000-03-19 Martin v. Löwis +2000-03-19 Martin v. Loewis * except.c (emit_handlers): Clear catch_clauses_last.