+2001-03-27 Andrew Haley <aph@cambridge.redhat.com>
+
+ * lang-options.h: Add flag_check_references.
+
+2001-04-04 Per Bothner <per@bothner.com>
+
+ * java-tree.h (CONSTANT_VALUE_P): New macro.
+ * jcf-write.c (generate_classfile): Use CONSTANT_VALUE_P.
+ * parse.y (maybe_build_class_init_for_field): New static function.
+ (resolve_expression_name, resolve_field_access): Use
+ maybe_build_class_init_for_field instead of build_class_init
+ This does not do the init if the field is compile-time-constant.
+ (resolve_field_access): Simplify.
+
+ * parse.y (fold_constant_for_init): Merge test into switch.
+
+2001-04-03 Zack Weinberg <zackw@stanford.edu>
+
+ * Make-lang.in (buffer.o, check-init.o, class.o): Don't depend
+ on gansidecl.h.
+ * buffer.c, jvgenmain.c: Don't include gansidecl.h.
+
+2001-04-02 Zack Weinberg <zackw@stanford.edu>
+
+ * expr.c (pop_type_0): Save the result of the first
+ lang_printable_name call in a scratch buffer, so it
+ won't be clobbered by the second call.
+
+2001-03-30 Alexandre Petit-Bianco <apbianco@redhat.com>
+
+ * parse-scan.y (array_type:): Rewritten.
+ (type_declaration:): `empty_statement' replaces `SC_TK.'
+ (class_member_declaration:): `empty statement' added.
+ (method_body:): Simplified.
+ (static_initializer:): Likewise.
+ (primary_no_new_array:): Use `type_literals.'
+ (type_literals:): New rule.
+ (dims:): Set and update `bracket_count.'
+ Fixes PR java/1074. Fixes PR java/2412.
+
+2001-03-28 Hans Boehm <boehm@acm.org>
+
+ * boehm.c (PROCEDURE_OBJECT_DESCRIPTOR): Set to use `build_int_2.'
+ (get_boehm_type_descriptor): Set type on returned value to be a
+ pointer length integer.
+
+2001-03-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * expr.c (pop_type_0): Call `concat' rather than building the
+ string manually.
+ (pop_type): Add format specifier in call to `error'.
+
+ * parse.y (patch_method_invocation): Avoid casting away
+ const-ness.
+
+2001-03-28 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * jvgenmain.c (do_mangle_classname): End string constant with '\0'.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ IA-64 ABI Exception Handling:
+ * Make-lang.in (except.o): Don't depend on eh-common.h.
+ * check-init.c (check_init): Handle EXC_PTR_EXPR.
+ * decl.c (init_decl_processing) [throw_node]: No _Jv_Sjlj_Throw.
+ [soft_exceptioninfo_call_node]: Remove.
+ [eh_personality_libfunc, lang_eh_runtime_type]: New.
+ (end_java_method): No emit_handlers.
+ * except.c (java_set_exception_lang_code): Remove.
+ (method_init_exceptions): Don't call it.
+ (prepare_eh_table_type): No CATCH_ALL_TYPE.
+ (build_exception_object_ref): New.
+ (expand_end_java_handler): Update for except.h name changes.
+ (emit_handlers, expand_resume_after_catch): Remove.
+ * expr.c (java_lang_expand_expr): Update for except.h name changes.
+ (process_jvm_instruction): Use build_exception_object_ref.
+ * java-tree.h (JTI_SOFT_EXCEPTIONINFO_CALL_NODE): Remove.
+ (soft_exceptioninfo_call_node): Remove.
+ (build_exception_object_ref): Declare.
+ * jcf-write.c (generate_bytecode_insns) [CALL_EXPR]: No
+ soft_exceptioninfo_call_node. Move processing ...
+ [EXC_PTR_EXPR]: ... here.
+ * parse.h (BUILD_ASSIGN_EXCEPTION_INFO): Remove dead code.
+ * parse.y (catch_clause_parameter): Use build_exception_object_ref.
+ (source_end_java_method): No java_set_exception_lang_code or
+ emit_handlers.
+ (build_dot_class_method): Use build_exception_object_ref.
+ (try_reference_assignconv): Check EXC_PTR_EXPR not
+ soft_exceptioninfo_call_node.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ * java-tree.h (throw_node): Define as a single member of
+ java_global_trees instead of a separate array.
+ (JTI_THROW_NODE): New.
+ * decl.c (throw_node): Don't declare.
+ (init_decl_processing): Init a scalar throw_node.
+ Don't register it for gc.
+ * check-init.c (check_init): Reference scalar throw_node.
+ * expr.c (build_java_athrow): Likewise.
+ * jcf-write.c (generate_bytecode_insns): Likewise.
+ * parse.h (BUILD_THROW): Likewise.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ * decl.c (end_java_method): Do not save and restore
+ flag_non_call_exceptions.
+ * parse.y (source_end_java_method): Likewise.
+ * lang.c (flag_exceptions): Don't declare.
+ (java_init_options): Set flag_non_call_exceptions. Set
+ flag_exceptions here ...
+ (java_init): ... not here.
+
+2001-03-27 Richard Henderson <rth@redhat.com>
+
+ * expr.c, parse.h: Use USING_SJLJ_EXCEPTIONS instead of
+ exceptions_via_longjmp.
+
+ * lang.c (flag_new_exceptions): Don't declare it.
+ (java_init_options): Or set it.
+
+2001-03-27 Richard Henderson <rth@redhat.com>
+
+ * decl.c (end_java_method): Rename asynchronous_exceptions to
+ flag_non_call_exceptions.
+ * parse.y (source_end_java_method): Likewise.
+
+2001-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Make-lang.in: Depend on $(SYSTEM_H), not system.h.
+
+2001-03-26 Mark Mitchell <mark@codesourcery.com>
+
+ * parse.h (DECL_END_SOURCE_LINE): Don't rely on DECL_FRAME_SIZE.
+
+2001-03-26 Alexandre Petit-Bianco <apbianco@redhat.com>
+
+ * parse.y (find_as_inner_class): Follow current package
+ indications not to mistakingly load an unrelated class.
+
+2001-03-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * constants.c (PUTN): Use memcpy, not bcopy.
+
+ * lex.c (java_read_char): Use memmove, not bcopy.
+
+ * parse.y (java_parser_context_resume): Use memcpy, not bcopy.
+
+2001-03-23 Per Bothner <per@bothner.com>
+
+ * verify.c (verify_jvm_instructions): Replace 3 pop_type by POP_TYPE
+ macro for better error pin-pointing.
+ * java-tree.h: Fix typo in comment.
+
+ * jcf-write.c (generate_bytecode_insns): Changes to TRY_FINALLY_EXPR.
+ Don't include jsr/goto in exception range.
+ Check if start and end of exception range are the same (also TRY_EXPR).
+ Don't emit jsr after try_block if CAN_COMPLETE_NORMALLY is false.
+ However, do emit the following goto even if try_block is empty.
+ Defer freeing exception_decl until after the finalizer, to make
+ sure the local isn't reused in the finalizer. Fixes PR java/1208.
+
+ * parse.y (java_complete_lhs): If the try-clause is empty, just
+ return the finally-clause and vice versa.
+
+2001-03-23 Alexandre Petit-Bianco <apbianco@redhat.com>
+
+ * gcj.texi (Input Options): documented the check for attribute
+ `gnu.gcc.gccj-compiled' and the `-fforce-classes-archive-check' flag.
+ * java-tree.h (flag_force_classes_archive_check): Declared extern.
+ * jcf-parse.c (HANDLE_GCJCOMPILED_ATTRIBUTE): New macro.
+ (jcf_parse): Check for the right classes archive if necessary.
+ * jcf-reader.c (get_attribute): Define `MATCH_ATTRIBUTE' and use it.
+ (jcf_parse_fields): Fixed indentation.
+ * jcf-write.c (append_gcj_attribute): New function.
+ (generate_classfile): Compute the attribute count, invoke
+ `append_gcj_attribute'.
+ * jcf.h (typedef struct JCF): `seen_in_zip' and `java_source'
+ turned into bit fields. New bit field `right_zip.'
+ (JCF_ZERO): Set `right_zip' to zero.
+ * lang-options.h (-fforce-classes-archive-check): Added flag.
+ * lang.c (flag_force_classes_archive_check): New flag.
+ (lang_f_options): New entry `force-classes-archive-check.'
+ Fixes PR java/1213.
+
+2001-02-07 Andrew Haley <aph@redhat.com>
+
+ * gcj.texi (Configure-time Options): Add -fcheck-references.
+ * expr.c (build_java_indirect_ref): New function.
+ (java_check_reference): New function.
+ (build_java_array_length_access): Use build_java_indirect_ref to
+ check for null references.
+ (build_java_arrayaccess): Likewise.
+ (build_get_class): Likewise.
+ (build_field_ref): Likewise.
+ (invoke_build_dtable): Likewise.
+ (build_invokeinterface): Likewise.
+ * lang.c (lang_f_options): Add flag_check_references.
+ * jvspec.c (jvgenmain_spec): Add flag_check_references.
+ * java-tree.h (flag_check_references): New variable.
+ * lang.c (flag_check_references): Likewise.
+ * parse.y (patch_invoke): Use java_check_reference.
+ (patch_assignment): Allow for extra nesting in
+ _Jv_CheckArrayStore.
+
+2001-03-23 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * gjavah.c (cxx_keywords): Update from the definitive list in cp/lex.c.
+ * lex.c (cxx_keywords): Likewise.
+
+2001-03-21 Alexandre Petit-Bianco <apbianco@redhat.com>
+
+ * parse.y (qualify_ambiguous_name): Broaden `length'
+ recognition. Help MODIFY_EXPR be resolved as expression names.
+ Fixes PR java/2066. Fixes PR java/2400.
+
+2001-03-21 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * gjavah.c (process_file): Mark interface definitions with
+ "__attribute__ ((java_interface))".
+
+2001-03-21 Alexandre Petit-Bianco <apbianco@redhat.com>
+
+ * class.c (layout_class): Fixed push_super_field's second
+ argument. Fixes PR java/2333.
+ (jdep_resolve_class): Reset TYPE_SIZE if `error_mark_node', it's
+ too early to lay innerclasses out.
+
+2001-03-20 Tom Tromey <tromey@redhat.com>
+
+ * lex.c (java_read_unicode): Only accept leading `u's.
+
+2001-03-20 Tom Tromey <tromey@redhat.com>
+
+ * jcf-parse.c (read_class): Initialize `class'.
+
+2001-03-20 Matt Kraai <kraai@alumni.carnegiemellon.edu>
+
+ * jcf_parse.c (jcf_parse): Eliminate unused variable.
+
+2001-03-19 Mark Mitchell <mark@codesourcery.com>
+
+ * class.c (build_class_ref): Use SET_DECL_ASSEMBLER_NAME.
+ (layout_class): Likewise.
+ (layout_class_method): Likewise.
+ (emit_register_classes): Likewise.
+ * decl.c (builtin_function): Likewise.
+ (give_name_to_locals): Likewise.
+
+2001-03-19 Per Bothner <per@bothner.com>
+
+ * jcf-parse.c (load_inner_classes): Check CLASS_LOADED_P
+ before trying to load an inner class.
+
+ Fixes to process to command-line .class files in two passes.
+ * java-tree.h (JAVA_FILE_P, CLASS_FILE_P, ZIP_FILE_P): New flags.
+ (CLASS_FROM_CURRENTLY_COMPILED_SOURCE_P): Rename to ..
+ (CLASS_FROM_CURRENTLY_COMPILED_P): ... because it is more general now.
+ * class.c (is_compiled_class): Fix for renamed flag.
+ * parse.y (maybe_create_class_interface_decl): Likewise.
+ * jcf-parse.c (yyparse): Also set if compiling .class files.
+ * jcf-parse.c (read_class); Read current_class.
+ (jcf_parse): Make static.
+ (load_inner_classes): New function, with code moved from jcf_parse,
+ because we need to inner classes after the command-line files are read.
+ (yyparse): Set finput to NULL when it doesn't need to be closed.
+ Reduce use of main_jcf (basically only for archive) and
+ use finput instead of main_jcf->read_state.
+ Inline jcf_figure_file_type into yyparse.
+ Set JAVA_FILE_P, CLASS_FILE_P, or ZIP_FILE_P on filename list name.
+ Defer load_inner_classes and parse_class_file to a second pass,
+ after we've correctly mapped command-line .clas fiels to classes.
+ (jcf_figure_file_type): Removed.
+ * jcf.h (JCF_ZIP, JCF_CLASS, JCF_SOURCE): Removed flags.
+ (JCF_ZERO): Also clear zipd field.
+ * zipfile.h: Conditionalize on JCF_H insread of JCF_ZIP.
+
+2001-03-18 Matt Kraai <kraai@alumni.carnegiemellon.edu>
+
+ * jcf-parse.c (yyparse): Change ch from char * to char.
+
+2001-03-19 Per Bothner <per@bothner.com>
+
+ * jvspec.c (lang_specific_driver): Check for .zip and .jar files.
+ Add constructed filelist-file at end, following -xjava. Thus any .o
+ and library files are not affected by the -xjava. Also wrap
+ explicit @FILE with -xjava and -xnone.
+
+2001-03-19 Andrew Haley <aph@cambridge.redhat.com>
+
+ * class.c (build_static_field_ref): Call make_decl_rtl() after
+ setting the DECL_EXTERNAL flag.
+
+2001-03-17 Per Bothner <per@bothner.com>
+
+ * decl.c (clear_binding_level): Fix initializer (broke 03-15).
+
+ * jcf-write.c (generate_bytecode_insns): Handle emitting iinc
+ when result is is needed (target is STACK_TARGET).
+
+ * parse.h (JDEP_SOLV): Removed.
+ * parse.y (register_incomplete_type): Use JDEP_TO_RESOLVE instead.
+
+ * parse.y (incomplete_class_list): Removed.
+ (obtain_incomplete_type): Don't use or set incomplete_class_list.
+ It doesn't work if resolve_class changes the name of an array type
+ that is on the list and then someone else looks for the modified name.
+ Also, seems liable to break when compiling multiple source files at
+ once. So the simplest is to just remove incomplete_class_list -
+ it is only a minor space win and it is not even clear it saves time.
+
+ * parse.y (resolve_class): Remove unneeded promote_type.
+
+2001-03-15 Per Bothner <per@bothner.com>
+
+ * java-tree.h (BLOCK_IS_IMPLICIT): New flag.
+ * parse.h (BLOCK_EXPR_ORIGIN): Removed macro.
+ * parse.y (declare_local_variables, maybe_absorb_scoping_blocks):
+ Use BLOCK_IS_IMPLICIT rather than BLOCK_EXPR_ORIGIN.
+
+ * jcf-parse.c (yyparse): Set/reset input_filename for source file.
+ * parse.y (java_expand_classes): Likewise.
+
+ * parse.y (expand_start_java_method): Was only called once and had a
+ misleading name, so inline in caller java_complete_expand_method.
+ (enter_a_block): Likewise inline in enter_block and remove.
+
+ Remove junk from when gcc/java was created (by copying from C/C++).
+ * decl.c (keep_next_level_flag, keep_next_if_subblocks): Remove.
+ (struct binding_level): Remove fields keep, keep_if_subblocks,
+ more_cleanups_ok, have_cleanups (which have never been used).
+ (pushlevel, poplevel): Remove related useless code.
+
+ * class.c (make_class_data): The class_dtable_decl (i.e. the
+ vtable for Class) should be external, except when compiling Class.
+
+ * jvspec.c (lang_specific_driver): Fix -C handling.
+ Check -save-temps to see if temp @FILE should be deleted.
+ Follow-up to/fix for February 16 patch.
+
+ * verify.c (verify_jvm_instructions): Better error msgs for dup.
+ (type_stack_dup): Remove no-longer neded error check.
+
+2001-03-15 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * mangle.c (mangle_record_type): Rename 'from_pointer' argument
+ to 'for_pointer'. If this type is for a pointer (argument) mangling,
+ don't surround the element with 'N..E' if the type name is
+ unqualified.
+
+2001-03-14 Mark Mitchell <mark@codesourcery.com>
+
+ * class.c (build_static_field_ref): Use COPY_DECL_RTL,
+ DECL_RTL_SET_P, etc.
+ (make_method_value): Likewise.
+ (get_dispatch_table): Likewise.
+
+ * decl.c (push_jvm_slot): Use COPY_DECL_RTL, DECL_RTL_SET_P, etc.
+
+2001-03-07 Tom Tromey <tromey@redhat.com>
+
+ * config-lang.in (lang_requires): Define.
+
+2001-03-07 Brad Lucier <lucier@math.purdue.edu>
+
+ * typeck.c (convert): Check flag_unsafe_math_optimizations,
+ not flag_fast_math.
+
+2001-03-05 Per Bothner <per@bothner.com>
+
+ Fix a problem where rest_of_decl_compilation applied to
+ class_dtable_decl causes problems because it was done too early,
+ before output file was opened.
+ * decl.c (init_decl_processing): Remove init of class_dtable_decl.
+ * class.c (class_dtable_decl): Add macro - element of class_roots.
+ (make_class_data): Define class_dtable_decl.
+ * java-tree.h (JTI_CLASS_DTABLE_DECL, class_dtable_decl): Removed.
+
+2001-03-01 Zack Weinberg <zackw@stanford.edu>
+
+ * java/class.c, java/decl.c, java/java-tree.h: Replace all
+ uses of 'boolean' with 'bool'.
+
+2001-03-01 Zack Weinberg <zackw@stanford.edu>
+
+ * lang-specs.h: Add zero initializer for cpp_spec field to all
+ array elements.
+
+2001-02-16 Per Bothner <per@bothner.com>
+
+ Handle compiling multiple input files at once, and @FILE syntax.
+ * gcj.texi: Updated documentation to match.
+ * java-tree.h (flag_filelist_file, init_src_parse): New declarations.
+ * jcf-parse.c (parse_source_file): Split into ...
+ (parse_source_file_1): New function - and:
+ (parse_source_file_2): New function.
+ (yyparse): On -ffilelist-file, open and scan named file.
+ On first pass over files, only do parse_source_file_1.
+ A new second pass calls parse_source_file_2 for each file to compile.
+ (init_jcf_parse): Call init_src_parse.
+ * jvspec.c (INDIRECT_FILE_ARG): New flag.
+ (lang_specific_driver): Support @FILELIST-FILE syntax, as well
+ as multiple input file combined in one compilation.
+ * lang-options.h: Add -ffilelist-file
+ * lang.c (flag_filelist_file): New flag variable.
+ (lang_f_options): Handle -ffilelist-file.
+ * lex.c (java_init_lex): Don't clear ctxp->incomplete_class.
+ * parse.h (struct parse_ctxt): Remove fields incomplete_class and
+ gclass_list - use global fields of src_parse_roots instead.
+ * parse.y (src_parse_roots): New array.
+ (incomplete_class_list, gclass_list): New macros.
+ (push_parser_context, java_pop_parser_context,
+ java_parser_context_resume): Don't fiddle with deleted fields.
+ (various): Use incomplete_class gclass_list and global macros
+ instead of parse_ctxt fields - the lists are global.
+ (init_src_parse): New function.
+
+Fri Feb 23 15:28:39 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * decl.c (set_block): Set NAMES and BLOCKS from BLOCK.
+
+2001-02-20 Alexandre Petit-Bianco <apbianco@redhat.com>
+
+ * parse.y (check_inner_class_access): Moved declaration of local
+ `enclosing_decl_type' to the right location.
+
+2001-02-19 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * parse.y (parser_check_super_interface): Don't call
+ check_pkg_class_access for an inner interface.
+ (parser_check_super): Don't call check_pkg_class_access for inner
+ class.
+ (do_resolve_class): Simplify enclosing type loop. Don't call
+ check_pkg_class_access if CL and DECL are not set.
+ (find_in_imports_on_demand): Set DECL if class_type needed to be
+ loaded. Don't call check_pkg_class_access for an inner class.
+ (check_inner_class_access): Rewritten to implement member access
+ rules as per spec 6.6.1.
+ (check_pkg_class_access): Handle the empty package correctly.
+ (in_same_package): New function. Determine if two classes are in the
+ same package.
+
+2001-02-18 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * typeck.c (build_java_array_type): Don't try to poke a public `clone'
+ method into array types.
+ * parse.y (patch_method_invocation): Bypass access check on clone call
+ to array instance.
+
+2001-02-15 Alexandre Petit-Bianco <apbianco@redhat.com>
+
+ * expr.c (build_instanceof): Check for arrays when trying fold to
+ false.
+
+2001-02-15 Jim Meyering <meyering@lucent.com>
+
+ * Make-lang.in (java.install-common): Depend on `installdirs'.
+ (java.install-info): Likewise.
+
+2001-02-15 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * Make-lang.in (jvspec.o): Modify rule to match that of cp/g++spec.o.
+
+2001-02-14 Tom Tromey <tromey@redhat.com>
+ Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ Fix for PR java/1261.
+ * typeck.c (build_java_array_type): Add public `clone' method to
+ arrays.
+ * parse.y (resolve_qualified_expression_name): Use current_class
+ when checking for inaccessibility.
+ (patch_method_invocation): Fixed error message when accessibility
+ denied. Added `from_super' argument.
+
+2001-02-14 Alexandre Petit-Bianco <apbianco@redhat.com>
+
+ * parse.y (resolve_class): Don't build a fake decl. Use the one
+ already built.
+ * typeck.c (build_java_array_type): Build and assign decl to array
+ type.
+
+2001-02-14 Alexandre Petit-Bianco <apbianco@redhat.com>
+
+ * parse.y (not_accessible_p): Changed leading comment. Added extra
+ `where' argument. Use it to enforce protected access rules.
+ (resolve_qualified_expression_name): Added extra argument to
+ not_accessible_p.
+ (patch_method_invocation): Use argument `primary' to provide
+ not_accessible_p with an extra argument.
+ (lookup_method_invoke): Added extra argument to not_accessible_p.
+ (search_applicable_method_list): Likewise.
+
+2001-02-13 Alexandre Petit-Bianco <apbianco@redhat.com>
+
+ * parse.y (resolve_qualified_expression_name): Try to resolve as
+ an inner class access only if `decl' is a TYPE_DECL.
+
+2001-02-13 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * decl.c (classdollar_identifier_node): Initialize.
+ * java-tree.h (enum java_tree_index): New entry
+ `JTI_CLASSDOLLAR_IDENTIFIER_NODE.'
+ (classdollar_identifier_node): New macro.
+ (ID_CLASSDOLLAR_P): Likewise.
+ * parse.y (build_dot_class_method): Use `classdollar_identifier_node.'
+ (build_dot_class_method_invocation): Likewise.
+ (find_applicable_accessible_methods_list): `class$' can't be
+ inherited.
+
+2001-02-09 Raja R Harinath <harinath@cs.umn.edu>
+
+ * Make-lang.in (java/mangle_name.o): Add 'make' prereqs.
+
+2001-02-09 Alexandre Petit-Bianco <apbianco@redhat.com>
+
+ * Manke-lang.in (JVGENMAIN_OBJS): Added `errors.o'
+ * jvgenmain.c (error): Reversed 2001-02-09 patch. `error' is now
+ gone.
+
+2001-02-09 Alexandre Petit-Bianco <apbianco@redhat.com>
+
+ * mangle_name (append_unicode_mangled_name): Emit `_' or `U'
+ outside of the `__U' sequence too.
+ (unicode_mangling_length): Count `_' or `U' outside of the `__U'
+ sequence too.
+
+2001-02-09 Alexandre Petit-Bianco <apbianco@redhat.com>
+
+ * jvgenmain.c (error): Reversed 2001-02-01 deletion.
+
+2001-02-08 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * Make-lang.in (JAVA_OBJS): Added java/mangle_name.o
+ (JVGENMAIN_OBJS): Likewise.
+ * java-tree.h (append_gpp_mangled_name): New prototype.
+ * jcf-parse.c (ggc_mark_jcf): Argument now `void *.'
+ Removed cast calling `gcc_add_root.'
+ * jvgenmain.c (mangle_obstack): New global, initialized.
+ (main): Use it.
+ (do_mangle_class): Constify local `ptr.'
+ Removed macro `MANGLE_NAME.' Removed cast in `for.' Call
+ append_gpp_mangle_name and update `count' if necessary.
+ Use `mangle_obstack.'
+ * mangle.c (append_unicode_mangled_name): Removed.
+ (append_gpp_mangled_name): Likewise.
+ (unicode_mangling_length): Likewise.
+ (mangle_member_name): Return type set to `void.'
+ (mangle_field_decl): Don't append `U' in escaped names.
+ (mangle_method_decl): Likewise.
+ (mangle_member_name): Just use `append_gpp_mangled_name.'
+ * mangle_name.c: New file.
+
+2001-02-07 Per Bothner <per@bothner.com>
+
+ * check-init.c (check_init): Fix TRY_FINALLY_EXPR logic.
+
+ * check-init.c (check_init): Don't call done_alternative after
+ processing loop code, as a LOOP_EXPR never terminates normally.
+
+2001-02-08 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcj.texi: Change sources.redhat.com reference to gcc.gnu.org.
+
+2001-02-07 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * jcf-parse.c (HANDLE_SYNTHETIC_ATTRIBUTE): Don't handle field
+ DECLs.
+
+2001-02-06 Tom Tromey <tromey@redhat.com>
+
+ * lex.c (java_new_lexer): Longer error message.
+
+2001-02-05 Jeff Sturm <jeff.sturm@commerceone.com>
+ Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * typeck.c (build_prim_array_type): Added leading comment.
+ (build_java_array_type): Moved locals out of
+ block. Always create the `data' field, fixed alignment to match
+ C++.
+
+2001-02-04 Tom Tromey <tromey@redhat.com>
+
+ * expr.c (java_lang_expand_expr): Don't bother recomputing
+ `length'. Use rest_of_decl_compilation, not make_decl_rtl.
+ Fixes PR java/1866.
+
+2001-02-05 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * parse.y (process_imports): Save the original name of the import
+ for better error report.
+
+2001-02-04 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * Make-lang.in (jvspec.o): Add DRIVER_DEFINES to the list
+ of macros used when compiling jvspec.c.
+ * jvspec.c (lang_specific_driver): Link with the shared
+ libgcc by default.
+
+Sun Feb 4 15:52:44 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * check-init.c (check_init): Call internal_error instead of fatal.
+ * expr.c (java_lang_expand_expr): Likewise.
+ * jcf-parse.c (get_constant): Likewise.
+ * mangle.c (java_mangle_decl): Likewise.
+ * parse.y (make_nested_class_name, java_complete_lhs): Likewise.
+ (operator_string): Likewise.
+ * check-init.c (check_init): Call abort instead of fatal.
+ * class.c (build_class_ref): Likewise.
+ * constants.c (write_constant_pool): Likewise.
+ * decl.c (start_java_method): Likewise.
+ * expr.c (push_type, java_stack_pop, java_stack_swap): Likewise.
+ (java_stack_dup, encode_newarray_type): Likewise.
+ (build_java_array_length_access): Likewise.
+ (build_java_check_indexed_type, expand_java_pushc): Likewise.
+ (build_java_soft_divmod, build_invokeinterface): Likewise.
+ * java-tree.h (INNER_CLASS_P): Likewise.
+ * jcf-parse.c (parse_signature, get_name_constant): Likewise.
+ (give_name_to_class, get_class_constant): Likewise.
+ * jcf-write.c (CHECK_PUT, CHECK_OP, get_access_flags): Likewise.
+ (find_constant_index, generate_bytecode_conditional): Likewise.
+ (generate_bytecode_insns, perform_relocations): Likewise.
+ * lex.c (java_unget_unicode, java_lex): Likewise.
+ * mangle.c (mangle_type, mangle_record_type): Likewise.
+ (mangle_pointer_type, mangle_array_type, init_mangling): Likewise.
+ (finish_mangling): Likewise.
+ * parse.h (MARK_FINAL_PARMS): Likewise.
+ * parse.y (pop_current_osb, unreachable_stmt_error): Likewise.
+ (obtain_incomplete_type, java_complete_class): Likewise.
+ (java_check_regular_methods, java_complete_expand_method): Likewise.
+ (cut_identifier_in_qualified, check_deprecation): Likewise.
+ (patch_invoke, find_applicable_accessible_methods_list): Likewise.
+ (java_complete_lhs, lookup_name_in_blocks): Likewise.
+ (check_final_variable_indirect_assignment, build_unaryop): Likewise.
+ * typeck.c (set_local_type, parse_signature_type): Likewise.
+ (parse_signature_string, build_java_signature): Likewise;
+ (set_java_signature): Likewise.
+ * verify.c (type_stack_dup, CHECK_PC_IN_RANGE): Likewise.
+ * class.c (add_method): Call fatal_error instead of fatal.
+ (build_static_field_ref): Likewise.
+ * expr.c (build_known_method_ref, expand_invoke): Likewise.
+ * jcf-parse.c (get_constant, jcf_parse): Likewise.
+ * lex.c (java_new_new_lexer): Likewise.
+ * jv-scan.c (main): Likewise.
+ (fatal_error): Renamed from fatal.
+ * jcf-parse.c (yyparse): Call fatal_io_error instead of
+ pfatal_with_name.
+ * jcf-parse.c (jcf_parse_source): Call fatal_io_error, not fatal.
+ (yyparse): Likewise.
+ * jcf-write.c (make_class_file_name, write_classfile): Likewise.
+ * lex.c (java_get_line_col): Likewise.
+ * jcf-parse.c (load_class): Make errors non-fatal.
+ * lex.c (byteswap_init, need_byteswap): Only #ifdef HAVE_ICONV.
+
+2001-02-01 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * jvgenmain.c (class_mangling_suffix): Remove unused string.
+ (error): Remove unused function.
+ (main): Don't use "__attribute__ alias" on generated class symbol.
+
+2001-01-30 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * jcf-parse.c (init_jcf_parse): Added cast to ggc_add_root's last
+ argument.
+ * parse.y (finish_method_declaration): Code accounting for WFLed
+ method DECL_NAMEs deleted.
+ (check_abstract_method_definitions): Likewise.
+ (resolve_type_during_patch): Layout resolved type.
+ * typeck.c (lookup_do): Removed unused local.
+
+2001-01-30 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * java-tree.h: Remove JTI_INTEGER_NEGATIVE_ONE_NODE.
+ * decl.c (init_decl_processing): Use integer_minus_one_node, not
+ integer_negative_one_node.
+ * expr.c (build_java_binop): Likewise.
+
+2001-01-24 Jeff Sturm <jeff.sturm@commerceone.com>
+
+ * zextract.c (read_zip_archive): Read file_offset before writing
+ zipd and consequently clobbering the header contents.
+
+2001-01-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Make-lang.in: Remove all dependencies on defaults.h.
+ * decl.c: Don't include defaults.h.
+ * expr.c: Likewise.
+ * parse.y: Likewise.
+
+2001-01-25 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * ChangeLog (2001-01-21): Fixed typo.
+ * class.c (layout_class_method): Code accounting for WFLed
+ method DECL_NAMEs deleted.
+ * constant.c (find_methodref_index): Likewise.
+ * decl.c (lang_mark_tree): Mark `wfl' field in struct lang_decl.
+ * java-tree.h (DECL_FUNCTION_WFL): New macro.
+ (struct lang_decl): New field `wfl'.
+ (java_get_real_method_name): Prototype deleted.
+ * mangle.c (mangle_method_decl): Code accounting for WFLed
+ method DECL_NAMEs deleted.
+ * parse.h (GET_METHOD_NAME): Macro deleted.
+ * parse.y (reset_method_name): Deleted.
+ (method_header): Set DECL_FUNCTION_WFL.
+ (check_abstract_method_header): Code accounting for WFLed method
+ DECL_NAMEs deleted.
+ (java_get_real_method_name): Deleted.
+ (check_method_redefinition): Code accounting for WFLed method
+ DECL_NAMEs deleted. Use DECL_FUNCTION_WFL.
+ (java_check_regular_methods): Likewise.
+ (java_check_abstract_methods): Likewise.
+ (java_expand_classes): Don't call `reset_method_name.'
+ (search_applicable_method_list): Use DECL_NAMEs instead of
+ GET_METHOD_NAME.
+ * typeck.c (lookup_do): Code accounting for WFLed method
+ DECL_NAMEs deleted.
+
+2001-01-25 Richard Earnshaw <rearnsha@arm.com>
+
+ * lex.c (java_read_char): Check for EOF from getc first.
+
+2001-01-23 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * class.c (layout_class): Don't lay the superclass out if it's
+ already being laid out.
+ * jcf-parse.c (handle_innerclass_attribute): New function.
+ (HANDLE_INNERCLASSES_ATTRIBUTE): Invoke
+ handle_innerclasses_attribute.
+ (jcf_parse): Don't load an innerclasses if it's already being
+ laid out.
+ * jcf-write.c (append_innerclass_attribute_entry): Static
+ `anonymous_name' and its initialization deleted. `ocii' and `ini'
+ to be zero for anonymous classes.
+
+2001-01-23 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * class.c (set_constant_value): Set DECL_FIELD_FINAL_IUD if
+ necessary.
+ * jcf-parse.c (set_source_filename): Use
+ MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC if necessary.
+
+2001-01-23 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * expr.c (build_jni_stub): Set DECL_CONTEXT on `meth_var' so it
+ gets a unique asm name.
+
+2001-01-23 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * jcf-parse.c (HANDLE_END_METHODS): Nullify current_method.
+ (HANDLE_START_FIELD): Invoke MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC
+ if necessary.
+ (HANDLE_SYNTHETIC_ATTRIBUTE): New macro.
+ * jcf-reader.c (get_attribute): Handle `Synthetic' attribute.
+ * parse.y (lookup_package_type_and_set_next): Deleted.
+ (resolve_package): Removed unnecessary code.
+ (find_applicable_accessible_methods_list): `finit$' can't be
+ inherited.
+ * verify.c (pop_argument_types): Added missing prototype.
+
2001-01-23 Bryce McKinlay <bryce@albatross.co.nz>
* config-lang.in: Disable java by default.
2001-01-21 Per Bothner <per@bothner.com>
- * verify.c (merge_type_state): Stil may have to merge even if
+ * verify.c (merge_type_state): Still may have to merge even if
LABEL_VERIFIED (label).
2001-01-21 Per Bothner <per@bothner.com>