+2005-04-19 Julian Brown <julian@codesourcery.com>
+
+ * decl.c (finish_method): Revert patch from 2005-04-13 for breaking
+ indirect dispatch with PIC.
+
+2005-04-18 Andrew Haley <aph@redhat.com>
+
+ * java-except.h (struct eh_range.handler): Remove unused field.
+ (handle_nested_ranges): Remove function declaration.
+ (sanity_check_exception_range): Add function declaration.
+ * verify.c (verify_jvm_instructions): Remove call to
+ handle_nested_ranges.
+ * verify-glue.c (verify_jvm_instructions_new): Call
+ sanity_check_exception_range.
+ * except.c (link_handler, eh_range_freelist, link_handler,
+ handle_nested_ranges): Remove.
+ (add_handler): Rewrite.
+ (sanity_check_exception_range): New function.
+ (print_ranges): New function.
+
+2005-04-13 Julian Brown <julian@codesourcery.com>
+
+ * decl.c (finish_method): Give methods once-only linkage.
+
+2005-04-11 Richard Sandiford <rsandifo@redhat.com>
+
+ * lang.opt: Refer to the GCC internals documentation instead of c.opt.
+
+2005-04-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * java-tree.h: Don't use PARAMS().
+
+2005-04-07 Per Bothner <per@bothner.com>
+
+ * class.c (push_class): By default, suppress debug output.
+ (finish_class): Enable debug output for classes we're emitting.
+
+2005-04-07 Andrew Haley <aph@redhat.com>
+
+ * gcj.texi: Correct gcj-dbtool instructions.
+
+2005-04-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * gcj.texi: Fix a typo.
+ * lang.c: Fix a comment typo.
+
+2005-04-01 Thomas Fitzsimmons <fitzsim@redhat.com>
+
+ * gcj.texi (Invoking gij): Add descriptions of new -X options.
+ Mention recognized-and-ignored compatibility options.
+ (Memory allocation): Add descriptions of JvMalloc, JvRealloc and
+ JvFree.
+ (About CNI): Add Memory allocation section.
+
+2005-04-01 Tom Tromey <tromey@redhat.com>
+
+ * decl.c (java_init_decl_processing): Fix types of
+ _Jv_MonitorEnter, _Jv_MonitorExit, _Jv_AllocObject,
+ _Jv_AllocObjectNoFinalizer, _Jv_Throw, _Jv_NewPrimArray,
+ _Jv_JNI_PopSystemFrame, _Jv_divI, _Jv_remI, _Jv_divJ, _Jv_remJ.
+
+2005-03-31 Jan Hubicka <jh@suse.cz>
+
+ * Make-lang.in (class.o, decl.o): Depend on cgraph.h.
+ * class.c: Include cgraph.h
+ (make_local_functoin_alias): Mark aslias as needed.
+ * resource.c: Include cgraph.h
+ (compile_resource_data): Go via cgraph interface.
+
+2005-03-30 Ian Lance Taylor <ian@airs.com>
+
+ * parse.y (maybe_yank_clinit): Don't crash if bbody is NULL.
+
+2005-03-30 Tom Tromey <tromey@redhat.com>
+
+ * jcf-dump.c (HANDLE_INNERCLASSES_ATTRIBUTE): Handle cases where
+ inner_class_info_index==0 or outer_class_info_index==0.
+
+2005-03-29 Tom Tromey <tromey@redhat.com>
+
+ * gcj.texi (libgcj Runtime Properties): Document
+ gnu.gcj.runtime.endorsed.dirs.
+
+2005-03-24 Anthony Green <green@redhat.com>
+
+ * gcj.texi (Invoking gcj-dbtool): Document new LIBDIR option to
+ 'gcj-dbtool -p'.
+
+2005-03-23 Tom Tromey <tromey@redhat.com>
+
+ * decl.c (GCJ_CURRENT_BC_ABI_VERSION): New define.
+ (parse_version): Use it.
+
+2005-03-23 Joseph S. Myers <joseph@codesourcery.com>
+
+ * lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.
+
+2005-03-18 Andrew Haley <aph@redhat.com>
+
+ PR java/20522
+ * decl.c (update_aliases): Don't update variables that are about
+ to die.
+ (maybe_poplevels): Add comment.
+
+2005-03-17 Bryce McKinlay <mckinlay@redhat.com>
+
+ PR java/20502
+ * jcf-parse.c (duplicate_class_warning): New function.
+ (java_parse_file): Call duplicate_class_warning if
+ CLASS_FROM_CURRENTLY_COMPILED_P is already set.
+ (parse_zip_file_entries): Likewise. Also set
+ CLASS_FROM_CURRENTLY_COMPILED_P.
+
+2005-03-16 Andrew Haley <aph@redhat.com>
+
+ * expr.c (expand_java_arrayload): Don't generate a
+ NullPointerException based on the type of the node.
+ (build_java_array_length_access): Likewise.
+
+2005-03-15 Zack Weinberg <zack@codesourcery.com>
+
+ * Make-lang.in (TEXI_JAVA_FILES): Add gcc-vers.texi.
+
+2005-03-11 Tom Tromey <tromey@redhat.com>
+
+ * gcj.texi (Invoking gcj-dbtool): Document 'gcj-dbtool -p'.
+ (libgcj Runtime Properties): Document the default .db.
+
+2005-03-10 Ranjit Mathew <rmathew@hotmail.com>
+
+ PR java/20312
+ * parse.y (checks_throws_clauses): Check exceptions list even when
+ the base class does not come from a source file being compiled.
+ (java_complete_lhs): Remove unused variable 'wfl'.
+
+2005-03-09 Ranjit Mathew <rmathew@hotmail.com>
+
+ PR java/20338
+ * decl.c (finish_method): Emit _Jv_InitClass for private static
+ methods inside inner classes as well.
+
+2005-03-08 Julian Brown <julian@codesourcery.com>
+ * Revert patch from 2005-03-08 for causing bootstrap failure on
+ ppc-darwin.
+
+2005-03-08 Julian Brown <julian@codesourcery.com>
+
+ * decl.c (finish_method): Give methods once-only linkage.
+
+2005-03-07 Ranjit Mathew <rmathew@hotmail.com>
+
+ * lang.c (flag_new_verifier): Enable by default, regardless of ABI.
+
+2005-03-07 Bryce McKinlay <mckinlay@redhat.com>
+
+ * verify-glue.c (vfy_is_assignable_from): Perform static check using
+ can_widen_reference_to if the C++ ABI is in use.
+ (vfy_get_interface_count, vfy_get_interface): Remove unused functions.
+ * verify-impl.c (debug_print, make_utf8_const, init_type, copy_type,
+ type_isresolved, init_state, set_pc, state_get_pc,
+ _Jv_BytecodeVerifier): Clean up unused and disabled functions.
+ (verify_fail): Report the current PC from the verifier context.
+ (free_state): Remove #if 0 block to enable this function.
+ (free_verifier_context): Call free_state on state_list iterator
+ values before freeing them.
+ * expr.c (pop_type_0): Pop correct type for error message when stack
+ contains a multi-word type.
+
+2005-03-07 Ranjit Mathew <rmathew@hotmail.com>
+
+ * expr.c (build_java_array_length_access): Remove !flag_new_verifier
+ for known NULL array length access.
+
+2005-03-07 Tom Tromey <tromey@redhat.com>
+
+ * gcj.texi (Invoking gcj-dbtool): Document '-f'.
+
+2005-03-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * jcf-dump.c, jcf-io.c, jcf-reader.c, lang.c, parse.h,
+ typeck.c: Update copyright.
+
+2005-03-06 Ranjit Mathew <rmathew@hotmail.com>
+
+ Remove xref code.
+ * xref.c, xref.h: Remove file.
+ * Make-lang.in (java/xref.o): Remove.
+ * java-tree.h (flag_emit_xref, do_not_fold): Remove declaration.
+ * lang.c (flag_emit_xref): Remove definition.
+ * parse.h (DECL_END_SOURCE_LINE, DECL_INHERITED_SOURCE_LINE): Remove.
+ * typeck.c (convert): Remove use of do_not_fold.
+ * parse.y (do_not_fold): Remove definition.
+ (parser grammar): Remove xref code.
+ (maybe_create_class_interface_decl, create_class): Likewise.
+ (register_fields, method_header, finish_method_declaration): Likewise.
+ (declare_local_variables, source_end_java_method): Likewise.
+ (java_complete_expand_classes): Do not set do_not_fold.
+ (java_complete_expand_method): Remove xref code.
+ (java_expand_classes, resolve_field_access, patch_invoke): Likewise.
+ (java_complete_tree, java_complete_lhs, patch_assignment): Likewise.
+ (patch_binop, build_string_concatenation, patch_array_ref): Likewise.
+ (patch_synchronized_statement, patch_throw_statement): Likewise.
+ (maybe_build_class_init_for_field): Likewise.
+
+2005-03-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * expr.c (build_expr_wfl, expr_add_location): Use TYPE_P
+ instead of IS_NON_TYPE_CODE_CLASS.
+
+2005-03-04 Andrew Haley <aph@redhat.com>
+
+ PR java/18362
+ * class.c (set_method_index): Don't set method_index if it is
+ NULL_TREE.
+ (layout_class_method): Don't complain about "non-static method foo
+ overrides static method" in the case of indirect dispatch.
+
+2005-03-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * jcf-io.c (caching_stat): Use __extension__ to avoid pedantic
+ warning.
+ * Make-lang.in: Don't elide warnings in jcf-io.c.
+
+2005-03-01 Per Bothner <per@bothner.com>
+
+ PR java/8608
+ * check-init.c (wfl): Remove static.
+ (final_assign_error, check_init): Replace calls to parse_error_context
+ by plain error.
+ (check_init): Save, set, and restore input_location for each exp.
+
+2005-03-01 Per Bothner <per@bothner.com>
+
+ * jcf-reader.c (get_attribute): Handle SourceDebugExtension (JSR 45)
+ if HANDLE_SOURCEDEBUGEXTENSION_ATTRIBUTE is defined.
+ * jcf-dump.c (HANDLE_SOURCEDEBUGEXTENSION_ATTRIBUTE): Print contents.
+
+2005-03-01 Per Bothner <per@bothner.com>
+
+ * java-tree.h (IDENTIFIER_HANDLECLASS_VALUE): Remove ancient macro.
+
+2005-02-23 Thomas Fitzsimmons <fitzsim@redhat.com>
+
+ PR libgcj/16923
+ * gcj.texi (Invocation): Add descriptions of JvVMInitArgs and
+ JvVMOption.
+
+2005-02-22 Tom Tromey <tromey@redhat.com>
+
+ PR java/20056:
+ * verify-impl.c (EITHER): New define.
+ (types_compatible): Handle it.
+ (check_field_constant): Use it.
+
+2005-02-18 Tom Tromey <tromey@redhat.com>
+
+ PR java/20056:
+ * verify-impl.c (types_equal): Fixed test.
+
+ PR java/20056:
+ * verify-glue.c (vfy_class_has_field): New function.
+ * verify.h (vfy_class_has_field): Declare.
+ * verify-impl.c (check_field_constant): Added 'putfield'
+ argument.
+ (verify_instructions_0): Updated.
+ (types_equal): New function.
+
+2005-02-14 Tom Tromey <tromey@redhat.com>
+
+ PR java/19921:
+ * jcf-write.c (generate_bytecode_insns) <CALL_EXPR>: Note the
+ stack effect of multianewarray.
+
+2005-02-14 Andrew Haley <aph@redhat.com>
+
+ PR java/19907
+ * expr.c (expand_byte_code): Call promote_arguments().
+ (promote_arguments): New function.
+ * decl.c (check_local_unnamed_variable): Remove special case for
+ new verifier.
+ (find_local_variable): Promote all boolean types to int
+ when searching for local variable decls.
+
+2005-02-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * builtins.c, java-except.h, jcf-parse.c, jv-scan.c, lex.c,
+ parse-scan.y: Update copyright.
+
+2005-02-11 Per Bothner <per@bothner.com>
+
+ PR java/15543
+ * parse-scan.y (input_location): Remove variable.
+ (main_input_filename): New - replaces input_filename, which isn't
+ settable if USE_MAPPED_LOCATION.
+ * lex.c (java_init_lex): Wrap some more places in #ifndef JC1-LITE,
+ so we don't reference input_location or wfl_operator in that case.
+ * jv-scan.c (expand_location): Remove - no longer used.
+ (main): Set main_input_filename rather than input_filename.
+
+2005-02-09 Richard Henderson <rth@redhat.com>
+
+ * builtins.c (initialize_builtins): Call build_common_builtin_nodes.
+ * decl.c (java_init_decl_processing): Initialize const_ptr_type_node.
+
+2005-02-08 Marcin Dalecki <martin@dalecki.de>
+
+ * expr.c (add_type_assertion): Use the proper enumeration type,
+ since this is what htab_find_slot() is expecting.
+
+2005-02-06 Joseph S. Myers <joseph@codesourcery.com>
+
+ * gcj.texi: Update copyright dates.
+
+2005-02-02 Tom Tromey <tromey@redhat.com>
+
+ * gcj.texi (libgcj Runtime Properties): Default library_control
+ to 'cache'.
+
+2005-02-02 Ranjit Mathew <rmathew@hotmail.com>
+
+ PR java/15543
+ * parse-scan.y (formal_parameter): Use $2 (type) instead of $$
+ (modifiers) when square brackets are present in a declaration for
+ a final paramter.
+ * jv-scan.c (main): Set input_filename and input_line.
+
+2005-02-01 Tom Tromey <tromey@redhat.com>
+
+ PR java/19742:
+ * gjavah.c (get_field_name): Don't override name for JNI header.
+
+2005-02-01 Roger Sayle <roger@eyesopen.com>
+
+ * jcf-write.c (generate_bytecode_insns): Implement RSHIFT_EXPR
+ of unsigned types using iushr and lushr JVM bytecodes.
+
+2005-02-01 Ranjit Mathew <rmathew@hotmail.com>
+
+ PR java/19738
+ * gjavah.c (jni_print_float): Do not emit floating-point
+ initialiser for a static final field.
+ (jni_print_double): Likewise.
+
+2005-02-01 Mark Mitchell <mark@codesourcery.com>
+
+ Revert:
+ 2005-01-31 Mark Mitchell <mark@codesourcery.com>
+ * gjavah.c (print_field_info): Mark static data members of
+ floating-point type with "__extension__".
+
+2005-01-31 Mark Mitchell <mark@codesourcery.com>
+
+ * gjavah.c (print_field_info): Mark static data members of
+ floating-point type with "__extension__".
+
+2005-02-01 Ranjit Mathew <rmathew@hotmail.com>
+
+ PR java/9157
+ * parse.y (build_string_concatenation): Remove redundant if.
+ (patch_conditional_expr): Attempt to patch_string() the condition
+ of a ?: as well, in addition to its other operands.
+
+2005-01-25 Tom Tromey <tromey@redhat.com>
+
+ * Make-lang.in (java/java-tree-inline.o): Removed.
+
+2005-01-25 Ranjit Mathew <rmathew@hotmail.com>
+
+ PR java/19070
+ * parse.y (patch_binop): Allow comparisons against NULL only
+ if the other operand is of a reference type.
+
+2005-01-24 Tom Tromey <tromey@redhat.com>
+
+ * java-tree.h (gcj_abi_version): Declare.
+ * class.c (make_class_data): Push gcj_abi_version into "next"
+ field. Renamed field.
+ * decl.c (gcj_abi_version): New global.
+ (parse_version): New function.
+ (java_init_decl_processing): Call it. Renamed 'next' field.
+ Include version.h.
+ (GCJ_BINARYCOMPAT_ADDITION): New define.
+
+2005-01-24 Roger Sayle <roger@eyesopen.com>
+
+ PR java/19295
+ * jcf-write.c (generate_bytecode_insns): Conversions between
+ integer types of the same precision shouldn't generate widening
+ or narrowing conversion bytecodes.
+
+2005-01-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * java-except.h, java-tree.h: Remove unused prototypes.
+
+2005-01-20 Andrew Pinski <pinskia@gcc.gnu.org>
+
+ PR java/18091:
+ * jcf-write.c (perform_relocations): Don't call memcpy if source
+ and destination are the same.
+
+2005-01-17 Tom Tromey <tromey@redhat.com>
+
+ * verify-impl.c (get_short): Sign extend.
+ (get_int): Likewise.
+
+2005-01-12 Ranjit Mathew <rmathew@hotmail.com>
+
+ * expr.c (build_jni_stub): Replace mistaken use of TYPE_SIZE_UNIT
+ with TYPE_SIZE.
+
+2005-01-10 Ranjit Mathew <rmathew@hotmail.com>
+
+ * verify.c: Revert to the version before the BC-ABI merge.
+
+2005-01-10 Ranjit Mathew <rmathew@hotmail.com>
+
+ PR java/19277
+ * check-init.c (check_init): Take care of references that do not
+ have an explicit final variable declaration (e.g. array length
+ access) for pre/post in/de-crement operators.
+
+2005-01-08 Mark Wielaard <mark@klomp.org>
+
+ * parse.y (process_imports): Allocate (and free) original_name only
+ when not already defined.
+ * jcf-parse.c (read_class): Free results of find_class() and
+ lrealpath().
+ (java_parse_file): Keep pointer to head of file_list and free when
+ done. Free result of lrealpath().
+
+2005-01-05 Tom Tromey <tromey@redhat.com>
+
+ * gcj.texi (Standard Properties): java.ext.dirs is now used.
+
+2004-12-20 Andrew Haley <aph@redhat.com>
+
+ * typeck.c: Use fold_convert for ints and booleans.
+
+2004-12-17 Andrew Haley <aph@redhat.com>
+
+ PR java/18931
+ * typeck.c (convert): Use a CONVERT_EXPR when converting to
+ BOOLEAN_TYPE or CHAR_TYPE.
+ (convert_to_boolean, convert_to_char) : Remove.
+ * convert.h (convert_to_boolean, convert_to_char) : Remove.
+ * expr.c (expand_load_internal): Do type conversion if type is not
+ as required.
+
+2004-12-13 Danny Smith <dannysmith@users.sourceforge.net>
+
+ PR target/18459
+ * class.c (emit_register_classes): Use TARGET_USE_JCR_SECTION.
+ Update comment.
+
+2004-12-07 Andrew Haley <aph@redhat.com>
+
+ PR java/18811:
+ * jcf-parse.c (load_class): Remove sanity test for missing inner
+ class file.
+
+2004-12-06 Tom Tromey <tromey@redhat.com>
+
+ * Make-lang.in (JAVA_MANFILES): Added gcj-dbtool.
+ (java.uninstall): Likewise.
+ (java.maintainer-clean): Likewise.
+ (.INTERMEDIATE): Likewise.
+ (java.install-man): Likewise.
+ (gcj-dbtool.pod): New target.
+ * gcj.texi (Code Generation): Document -findirect-dispatch.
+ (libgcj Runtime Properties): Document
+ gnu.gcj.precompiled.db.path.
+ (Top): Link to "Invoking gcj-dbtool".
+
+2004-12-06 Tom Tromey <tromey@redhat.com>
+
+ PR java/14853:
+ * java-tree.h (extract_field_decl): Declare.
+ * parse.y (extract_field_decl): Renamed from
+ strip_out_static_field_access_decl. No longer static.
+ * check-init.c (get_variable_decl): Unwrap COMPOUND_EXPRs.
+
+2004-12-03 Tom Tromey <tromey@redhat.com>
+
+ * lang.c (flag_new_verifier): Define.
+ (java_post_options): Set flag_new_verifier if indirect dispatch
+ is being used.
+ * lang.opt (fnew-verifier): Removed.
+
+2004-12-03 Tom Tromey <tromey@redhat.com>
+
+ PR bootstrap/14614:
+ * Make-lang.in (java.install-common): Only install transformed
+ gcjh if gcj-cross exists.
+
+2004-12-03 Andrew Haley <aph@redhat.com>
+
+ PR java/18812
+ * except.c (link_handler): Patch 'outer' field of siblings of the
+ range we're demoting.
+
+2004-12-03 Andrew Haley <aph@redhat.com>
+
+ PR java/18697
+ * class.c (layout_class_method): Don't fail to override a method
+ simply because it has DECL_ARTIFICIAL set.
+
+2004-12-02 Tom Tromey <tromey@redhat.com>
+
+ PR java/16675:
+ * parse.y (craft_constructor): Special case null_pointer_node.
+
+2004-12-02 Tom Tromey <tromey@redhat.com>
+
+ PR java/18741:
+ * java-gimplify.c (java_gimplify_expr): Don't call
+ SET_EXPR_LOCATION unless wrapped tree is an expression.
+
+2004-11-27 Per Bothner <per@bothner.com>
+
+ * jcf-parse.c (set_source_filename): Improvement to Andrew's fix:
+ Fix fencepost error in 'i', which got executed one too many times.
+ Also, fold memcpy into explicit loop, as originally intended.
+ Also, free temporary 'buf' which otherwise leaks.
+
+2004-11-27 Per Bothner <per@bothner.com>
+
+ * expr.c (build_expr_wfl): Only declare last_file and last_filenode
+ local static variables if not USE_MAPPED_LOCATION.
+
+2004-11-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * class.c, decl.c, expr.c: Fix comment typos.
+
+2004-11-26 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR java/18305
+ * decl.c (end_java_method): Call
+ attach_init_test_initialization_flags on all the init_decls.
+ * parse.y (attach_init_test_initialization_flags): Move to ...
+ * expr.c (attach_init_test_initialization_flags): here and
+ support BIND_EXPR also.
+ * java-tree.h (attach_init_test_initialization_flags): Prototype.
+ * jcf-parse.c (parse_class_file): Don't disable class init
+ optimization.
+
+2004-11-25 Joseph S. Myers <joseph@codesourcery.com>
+
+ * gjavah.c, jcf-dump.c, jv-scan.c, jvspec.c: Avoid ` as left quote
+ in diagnostics.
+
+2004-11-24 Richard Henderson <rth@redhat.com>
+
+ * verify-glue.c (vfy_init_name, vfy_clinit_name, vfy_object_type,
+ vfy_string_type, vfy_throwable_type): Use ANSI declaration form.
+
+2004-11-24 Tom Tromey <tromey@redhat.com>
+
+ * verify.c (defer_merging): Don't use C++-style comment.
+ * verify.h (java_opcode): Added java_opcode_end.
+ * class.c (build_class_ref): Remove C++ comment and old FIXME.
+
+ * verify-impl.c (vfy_push_type): Removed bogus "return".
+ (initialize_stack): Use vfy_alloc and vfy_free.
+ (verify_instructions_0): Likewise.
+
+ * Merged gcj-abi-2-dev-branch to trunk.
+
+2004-11-24 Andrew Haley <aph@redhat.com>
+
+ * jcf-parse.c (parse_class_file): Set file_start_location.
+
+2004-11-10 Tom Tromey <tromey@redhat.com>
+
+ * class.c (make_field_value): Don't call build_static_field_ref.
+ (build_static_field_ref): Don't emit direct references when using
+ indirect dispatch.
+
+ * gcj.texi (Invoking gij): Document -verbose. Put -verbose and
+ -verbose:class into man page synopsis.
+
+2004-11-09 Tom Tromey <tromey@redhat.com>
+
+ * expr.c (build_java_arraystore_check): Still generate check if
+ element type is itself an array.
+
+2004-11-08 Tom Tromey <tromey@redhat.com>
+
+ * java-tree.h (soft_check_assignment_node): Removed.
+ (enum java_tree_index): Removed JTI_SOFT_CHECK_ASSIGNMENT_NODE.
+ * decl.c (java_init_decl_processing): Don't initialize
+ soft_check_assignment_node.
+
+2004-11-05 Tom Tromey <tromey@redhat.com>
+
+ * class.c (layout_class_methods): Don't add Miranda methods when
+ using indirect dispatch.
+
+2004-11-05 Bryce McKinlay <mckinlay@redhat.com>
+
+ * class.c (make_class_data): Call emit_assertion_table to set the
+ 'assertion_table' field.
+ (build_signature_for_libgcj): Move here from expr.c.
+ (add_assertion_table_entry): New function. Callback for assertion
+ hashtable traversal.
+ (emit_assertion_table): New. Take class argument, and generate
+ assertion table DECL based on the TYPE_ASSERTIONS hashtable.
+ * decl.c (init_decl_processing): Define assertion_entry_type record.
+ Push 'assertion_table' class field instead of 'verify'.
+ * expr.c (type_assertion_eq): Compare 'assertion_code' field.
+ (type_assertion_hash): Include 'assertion_code' in hash.
+ (add_type_assertion): Rewritten. Take class and assertion_code
+ arguments. Add assertions to the TYPE_ASSERTIONS hashtable.
+ (can_widen_reference_to): Use new add_type_assertion() arguments.
+ * java-tree.h (java_tree_index): Add JTI_ASSERTION_ENTRY_TYPE,
+ JTI_ASSERTION_TABLE_TYPE. Remove JTI_VERIFY_IDENTIFIER_NODE.
+ (verify_identifier_node): Removed.
+ (assertion_entry_type, assertion_table_type): New.
+ (ASSERTION_TYPES_COMPATIBLE, ASSERTION_IS_INSTANTIABLE): New. Type
+ assertion code definitions.
+ (struct type_assertion): Add assertion_code. Rename 'source_type' and
+ 'target_type' to 'op1' and 'op2'.
+ (add_type_assertion): Declare.
+ (lang_printable_name_wls): Remove unused definition.
+ * verify-glue.c: (vfy_is_assignable_from): New. Call add_type_assertion
+ to emit runtime assertion.
+ (vfy_note_stack_type): Clean up non-C90 declarations.
+ (vfy_note_local_type): Likewise.
+ * verify.h (vfy_is_assignable_from): Declare.
+ * verify-impl.c (is_assignable_from_slow): Remove unused function.
+ (ref_compatible): Rename arguments. Call vfy_is_assignable_from()
+ instead of is_assignable_from_slow().
+ (types_compatible): Reinstate ref_compatible() call.
+
+2004-11-04 Tom Tromey <tromey@redhat.com>
+
+ * class.c (build_static_field_ref): Reverted previous patch.
+
+ * class.c (build_static_field_ref): Don't emit direct references
+ when using indirect dispatch.
+
+2004-11-03 Tom Tromey <tromey@redhat.com>
+
+ * expr.c (expand_java_arrayload): Set lhs_type_node.
+ (expand_java_arraystore): Set rhs_type_node.
+
+2004-11-02 Tom Tromey <tromey@redhat.com>
+
+ * jcf-parse.c (compute_class_name): Use filename length from zip
+ directory, not strlen.
+
+ * expr.c (expand_invoke): Mark new interface methods as abstract.
+
+2004-11-01 Tom Tromey <tromey@redhat.com>
+
+ * verify-impl.c (push_jump): Removed check for uninitialized
+ objects.
+ (push_exception_jump): Likewise.
+ (handle_ret_insn): Likewise.
+ (handle_jsr_insn): Likewise.
+ (state_check_no_uninitialized_objects): Removed.
+
+ * decl.c (check_local_unnamed_variable): Recognize
+ promoted-to-int parameters when using the new verifier.
+ * expr.c (expand_java_arraystore): Explicitly request array type
+ when using new verifier.
+ (expand_java_arrayload): Likewise.
+ (invoke_build_dtable): Don't pass object_type_node as
+ expression argument to build_java_indirect_ref.
+ (build_java_check_indexed_type): Do nothing.
+ (build_java_arraystore_check): Handle case where array doesn't
+ have array type.
+ (build_java_array_length_access): Likewise.
+ (expand_invoke): Handle case where interface overrides a method
+ from Object.
+ (pop_type_0): Always succeed for reference types.
+ (process_jvm_instruction): Don't pop a value in a dead
+ exception handler.
+ (pop_arguments): Convert arguments to correct types.
+
+2004-10-29 Andrew Haley <aph@redhat.com>
+
+ * jcf-parse.c (give_name_to_class): Remove line that was
+ incorrectly merged.
+
+2004-10-29 Andrew Haley <aph@redhat.com>
+
+ * jcf-parse.c (set_source_filename): Add code to build new sfname.
+
+2004-10-20 Andrew Haley <aph@redhat.com>
+
+ * decl.c (end_java_method): Don't expand if flag_syntax_only.
+
+2004-10-26 Tom Tromey <tromey@redhat.com>
+
+ * verify.h (vfy_notify_verified): Removed.
+ * verify-glue.c (vfy_notify_verified): Removed.
+
+2004-10-26 Tom Tromey <tromey@redhat.com>
+
+ * verify-impl.c (debug_print_state): Declare `i' before code.
+ (merge_types): Modify `t' when it is null_type.
+
+2004-10-26 Tom Tromey <tromey@redhat.com>
+
+ * verify-impl.c (type_print): Renamed from print. Now static and
+ takes an argument.
+ (debug_print_state): Use type_print.
+
+2004-10-25 Tom Tromey <tromey@redhat.com>
+
+ * expr.c (build_invokeinterface): Compute correct offset for
+ index into interface methods.
+
+2004-10-20 Tom Tromey <tromey@redhat.com>
+
+ * java-tree.h (verify_jvm_instructions_new): Declare.
+
+ * jvspec.c (jvgenmain_spec): Remove -fnew-verifier from cc1
+ command line.
+
+ * verify-impl.c (verify_instructions): Correctly handle wide
+ types on the stack.
+ * verify-glue.c (vfy_get_class_name): Use DECL_NAME.
+ (vfy_get_component_type): Strip pointer types.
+ (vfy_find_class): Use get_type_from_signature. Strip pointer
+ types.
+ Include java-except.h.
+
+2004-10-20 Bryce McKinlay <mckinlay@redhat.com>
+
+ * verify-impl.c (type_array_elementpop_raw, vfy_pop_type_t,
+ vfy_push_type_t, set_variable, add_new_state, merge_into,
+ handle_jsr_insn, branch_prepass, check_class_constant,
+ check_wide_constant, get_one_type, compute_static_types,
+ verify_instructions_0): Clean up C99 declarations after statements.
+
+2004-10-20 Tom Tromey <tromey@redhat.com>
+
+ * verify-impl.c (merge_refs): Compare reference against iterator,
+ not ref2.
+
+ * verify-glue.c (vfy_tag): Mask off resolved flag.
+
+2004-10-19 Tom Tromey <tromey@redhat.com>
+
+ * verify-impl.c (verify_instructions): Call vfy_note_local_type.
+ (init_state_with_stack): Initialize `this_type' in state.
+ (verify_method): Use debug_print.
+ * verify-glue.c (vfy_is_primitive): Removed debugging print.
+ (vfy_note_stack_depth): Reverted last patch.
+ (vfy_note_stack_type): Note pointer to Object, not Object.
+ (vfy_note_local_type): Likewise.
+
+ * verify.h (vfy_note_instruction_seen): Declare.
+ * verify-glue.c (verify_jvm_instructions_new): Set
+ BCODE_EXCEPTION_TARGET on target instruction.
+ (vfy_note_instruction_seen): New function.
+ * verify-impl.c (FLAG_INSN_SEEN): New define.
+ (verify_instructions_0): Set flag on instruction. Save state for
+ PC=0 later.
+ (verify_instructions): Call vfy_note_instruction_seen.
+
+ * verify-glue.c (vfy_note_stack_depth): Fix off-by-one error.
+ (verify_jvm_instructions_new): Call method_init_exceptions,
+ add_handler, and handle_nested_ranges.
+ * verify-impl.c (verify_method): Return 1 on success.
+ (verify_instructions_0): Save the state at PC=0.
+
+ * verify-impl.c (init_type_from_class): Set is_resolved and
+ ref_next on new ref_intersection.
+ (init_type_from_string): Likewise.
+
+2004-10-15 Bryce McKinlay <mckinlay@redhat.com>
+
+ * expr.c (expand_bytecode): Use verify_jvm_instructions_new
+ if flag_new_verifier is set.
+ * java-tree.h (flag_new_verifier): Declare.
+ * lang.opt (fnew-verifier): New option.
+ * verify-impl.c: Work around namespace pollution by undef'ing
+ 'current_class'.
+ (struct verifier_context): Make 'bytecode' const.
+ (verify_fail_pc): Pass -1 PC argument to vfy_fail.
+ (types_compatible): For the BC-ABI, always consider reference types
+ compatible.
+ (check_class_constant): Use vfr->current_class.
+ (check_constant): Likewise.
+ (check_wide_constant): Likewise.
+ (check_field_constant): Check for 'L' at start of type name.
+ (get_one_type): Return pointer instead of type. Set type result in
+ caller via passed type pointer.
+ (compute_argument_types): Update to use new get_one_type arguments.
+ (compute_return_type): Likewise.
+ (make_verifier_context): New. Allocate and initialize 'vfr'.
+ (free_verifier_context): New. Free 'vfr' and its contents.
+ (verify_method): Remove ATTRIBUTE_UNUSED. Call make_verifier_context
+ and free_verifier_context.
+
+2004-10-15 Tom Tromey <tromey@redhat.com>
+
+ * verify-glue.c (vfy_note_local_type): Mark argument as unused.
+ * verify.h (vfy_fail): Fixed formatting.
+
+ * verify-impl.c (vfr): Fixed comment formatting.
+ (collapse_type): New function.
+ (verify_instructions): Notify compiler about type map.
+ * verify.h (vfy_note_stack_depth): Updated.
+ (vfy_note_stack_type): Likewise.
+ (vfy_note_local_type): Likewise.
+ (vfy_unsuitable_type, vfy_return_address_type, vfy_null_type):
+ Declare.
+ * verify-glue.c (vfy_note_stack_depth): Correctly size type
+ state. Added `method' argument.
+ (vfy_note_stack_type): Renamed from vfy_note_type. Added `method'
+ argument.
+ (vfy_note_local_type): New function.
+ (vfy_unsuitable_type): Likewise.
+ (vfy_return_address_type): Likewise.
+ (vfy_null_type): Likewise.
+
+ * verify.h (VFY_IN_GCC): Removed.
+ (VFY_WANT_TYPEMAP): Removed.
+ * verify-impl.c (verify_instructions_0): Removed useless "\".
+ (struct state) <next>: Uncomment.
+
+2004-10-13 Bryce McKinlay <mckinlay@redhat.com>
+
+ * verify-impl.c: Formatting fixes. Reformat C++-style comments to
+ C-style.
+
+2004-10-06 Bryce McKinlay <mckinlay@redhat.com>
+
+ * Make-lang.in (verify.o): Re-enabled this target.
+ * verify-glue.c (vfy_get_interface_count): Add ATTRIBUTE_UNUSED.
+ (vfy_get_interface): Likewise.
+ (verify_jvm_instructions_new): Renamed from verify_jvm_instructions.
+ * verify.h (verify_jvm_instructions_new): Declare.
+ * verify-impl.c (free_state): Temporarily comment out unused
+ function.
+
+2004-10-06 Tom Tromey <tromey@redhat.com>
+
+ * java-tree.h (JV_STATE_READ): New enum value.
+
+2004-10-06 Bryce McKinlay <mckinlay@redhat.com>
+
+ * verify.h: New file.
+
+2004-10-05 Bryce McKinlay <mckinlay@redhat.com>
+
+ * verify-impl.c, verify-glue.c, verify.h: New files.
+ * Make-lang.in: Add rules for verify-impl.o and verify-glue.o.
+
+2004-09-24 Andrew Haley <aph@redhat.com>
+
+ * decl.c (check_local_unnamed_variable): Always use the PARM_DECL
+ for a slot if it's of pointer type.
+
+2004-09-14 Tom Tromey <tromey@redhat.com>
+
+ * class.c (make_class_data): Correctly initialize "state" field.
+ Initialize "engine" field.
+ * decl.c (java_init_decl_processing): Add "engine" field.
+
+2004-09-10 Andrew Haley <aph@redhat.com>
+
+ PR java/12760
+ * expr.c (build_invokeinterface): Use fast method for interface
+ dispatch.
+ * java-tree.h (enum java_tree_index): Add JTI_ITABLE_TYPE,
+ JTI_ITABLE_PTR_TYPE.
+ (struct lang_type): Add itable_methods, itable_decl, itable_syms_decl.
+ (emit_symbol_table): Add new arg, element_size.
+ * decl.c (java_init_decl_processing): Initialize Class.itable.
+ * class.c (GEN_TABLE): New macro.
+ (gen_indirect_dispatch_tables): Use it. Add itable.
+ (make_class_data): Add new arg for emit_symbol_table().
+ Emit itable.
+ (add_miranda_methods): Make sure search_class has been parsed.
+ (emit_symbol_table): Add new arg, element_size.
+
+2004-09-06 Andrew Haley <aph@redhat.com>
+
+ * verify.c (merge_types): Return Object for all merges of
+ interfaces.
+ * expr.c (add_type_assertion): Don't generate assertions when
+ source type is array of Object.
+
+2004-09-03 Andrew Haley <aph@redhat.com>
+
+ * class.c (finish_class): Nullify TYPE_VERIFY_METHOD.
+
+ * lang.c (java_post_options): Force flag_verify_invocations if
+ we're not using indirect dispatch.
+
+ * expr.c (pop_type_0): Move test for interfaces before call to
+ can_widen_reference_to().
+ (build_signature_for_libgcj): Remove generation of canonical array
+ type.
+ (add_type_assertion): Canonicalize both arrays.
+ Don't assert that type X can be assigned to Object.
+ Don't assert that type X an be assigned to type X.
+ Don't assert that Object can be assigned to type X.
+ (can_widen_reference_to): Warn whenever we generate an assertion.
+ (process_jvm_instruction): Use throwable_type_node for the type of
+ an exception class.
+
+2004-09-01 Andrew Haley <aph@redhat.com>
+
+ * decl.c (java_init_decl_processing): Change
+ verify_identifier_node to "__verify".
+ * expr.c (add_type_assertion): Use verify_identifier_node for name.
+ * java-tree.h (verify_identifier_node): Change to "__verify".
+
+ * expr.c (build_signature_for_libgcj): New function.
+ (add_type_assertion): Use it to construct signatures for
+ source_type and target_type.
+
+2004-08-27 Andrew Haley <aph@redhat.com>
+
+ * java-tree.h (enum java_tree_index): Add JTI_VERIFY_IDENTIFIER_NODE.
+ (verify_identifier_node): New.
+ (TYPE_VERIFY_METHOD): New.
+ (struct type_assertion): New type.
+ * expr.c (type_assertion_eq): New function.
+ (type_assertion_hash): New function.
+ (add_type_assertion): New function.
+ (can_widen_reference_to): Call add_type_assertion().
+ * decl.c (java_init_decl_processing): Add verify_identifier_node.
+ * class.c (make_class_data): Initialize TYPE_VERIFY_METHOD (type).
+ (finish_class): Output TYPE_VERIFY_METHOD (type).
+
+ * decl.c (end_java_method): Nullify unused fields.
+
+2004-08-17 Andrew Haley <aph@redhat.com>
+
+ * verify.c (defer_merging): Quieten.
+ * jcf-parse.c (load_class): Only try to open a class file if it's
+ java.lang.Object or if it's part of the current compilation.
+ Check that the class we just tried to load is the class we just
+ loaded. Quieten.
+ (java_parse_file): Set flag_verify_invocations off if we're
+ compiling from .class.
+ (parse_zip_file_entries): Abort if we try to read a dummy class.
+ * expr.c (can_widen_reference_to): Quieten.
+ (build_invokevirtual): Abort if we try to invokevirtual an
+ interface.
+ (expand_invoke): Don't build a non-interface call to an interface.
+ (build_instanceof): Don't do premature optimization if
+ flag_verify_invocations is not set.
+ * class.c (set_super_info): Disable code that inherits TYPE_DUMMY
+ from superclass.
+ (build_static_field_ref): Add correct type conversion for
+ field_address.
+ (add_miranda_methods): Disable generation of Miranda methods for
+ dummy classes.
+ (layout_class_method): Don't complain about non-static method
+ overrides static method with dummy classes.
+
+2004-08-13 Tom Tromey <tromey@redhat.com>
+
+ * class.c (build_static_field_ref): Re-enable atable lookups for
+ static fields.
+
+ * parse.y (strip_out_static_field_access_decl): Indentation fix.
+
+2004-08-11 Tom Tromey <tromey@redhat.com>
+
+ * gcj.texi (libgcj Runtime Properties): Document new properties.
+
+2004-08-06 Andrew Haley <aph@redhat.com>
+
+ * jcf-parse.c (load_class): Check that we really have loaded the
+ class we're looking for.
+
+2004-07-19 Andrew Haley <aph@redhat.com>
+
+ * verify.c (verify_jvm_instructions): Comment change only.
+
+ * typeck.c (build_java_array_type): Add size field to array name.
+
+ * java-tree.h (LOCAL_SLOT_P): New.
+ (update_aliases): Add PC argument.
+ (pushdecl_function_level): New function.
+
+ * java-gimplify.c (java_gimplify_expr): Handle VAR_DECL,
+ MODIFY_EXPR, and SAVE_EXPR.
+ (java_gimplify_modify_expr): New function.
+
+ * expr.c (push_type_0): Call find_stack_slot() to create temporary.
+ (expand_iinc): Pass PC to update_aliases().
+ (STORE_INTERNAL): Likewise.
+ (process_jvm_instruction): Likewise.
+
+ * decl.c (base_decl_map): New variable.
+ (uniq): New variable.
+ (update_aliases): Rewrite with more thorough checking.
+ (debug_variable_p): New function.
+ (push_jvm_slot): Don't initialize local variable. Don't pushdecl.
+ (check_local_named_variable): Delete whole function.
+ (initialize_local_variable): New function.
+ (check_local_unnamed_variable): Add checks and comments.
+ (find_local_variable): Rewrite.
+ (java_replace_reference): New function.
+ (function_binding_level): New variable.
+ (pushdecl_function_level): New function.
+ (maybe_pushlevels): Set DECL_LOCAL_END_PC.
+ (maybe_pushlevels): Call pushdecl() on each of the new decls.
+ (start_java_method): Reset uniq. Create base_decl_map. Set
+ function_binding_level.
+ (end_java_method): Null unused fields to save memory.
+
+2004-06-29 Andrew Haley <aph@redhat.com>
+
+ * except.c (expand_start_java_handler): Push a new binding level.
+ Don't build a TRY_CATCH_EXPR now, we'll do it later. Call
+ register_exception_range() to register where we'll do it.
+ (expand_end_java_handler): Remove old bogus code. Replace with
+ new logic that simply builds TRY_CATCH_EXPRs and inserts them at
+ the top of the expression we're curently building.
+ (maybe_end_try): Delete.
+ * decl.c (binding_level.exception_range): New field.
+ (clear_binding_level): Add field exception_range. Reformat.
+ (poplevel): Call expand_end_java_handler().
+ (poplevel): Call java_add_stmt only if functionbody is false.
+ (maybe_poplevels): Don't call maybe_end_try() from here.
+ (end_java_method): Clear no longer used trees in function decl.
+ (register_exception_range): New function.
+ * java-tree.h (register_exception_range, struct eh_range): Declare.
+
+2004-06-22 Andrew Haley <aph@redhat.com>
+
+ * class.c (gen_indirect_dispatch_tables): Set the DECL_OWNER of
+ the otable.
+ * check-init.c (get_variable_decl): Teach check-init about
+ FIELD_DECLs addressed via the otable.
+ * jcf-parse.c (load_class): Check CLASS_LOADED_P, not
+ CLASS_PARSED_P.
+
+2004-05-28 Andrew Haley <aph@redhat.com>
+
+ * jcf-parse.c (load_class): Don't try to read a class that we've
+ already read.
+
+ * expr.c (build_invokeinterface): Use the old-fashioned way of
+ doing indirect dispatch: look up interfaces by name.
+ * java-tree.h (enum java_tree_index): Add
+ JTI_SOFT_LOOKUPINTERFACEMETHODBYNAME_NODE
+ * decl.c (java_init_decl_processing): Add
+ soft_lookupinterfacemethodbyname_node.
+
+ * gjavah.c (print_method_info): Final methods have vtable entries,
+ so gjavah needs to output them.
+ * class.c (layout_class_method): Generate vtable entries for final
+ methods.
+ * parse.y (invocation_mode): Use INVOKE_VIRTUAL for indirect
+ dispatch, even if a method is final.
+
+2004-05-25 Andrew Haley <aph@redhat.com>
+
+ * class.c (build_symbol_entry): Convert the names of constructors
+ to init_identifier_node when generating an entry for the indirect
+ dispatch table.
+
+ * expr.c (build_known_method_ref): Generate indirect calls for
+ all methods marked DECL_EXTERNAL or TREE_PUBLIC.
+
+2004-05-24 Andrew Haley <aph@redhat.com>
+
+ * expr.c (build_known_method_ref): Make sure ARRAY_REF access to
+ atable element is of the right type.
+
+ * class.c (build_static_field_ref): Cast pointer to correct type
+ for field.
+
+2004-04-20 Bryce McKinlay <mckinlay@redhat.com>
+
+ * Merged with HEAD as of 20040514. Diff against
+ gcj-abi-2-merge-20040514.
+
+2004-04-16 Andrew Haley <aph@redhat.com>
+
+ * verify.c (check_pending_block): Disable subroutine checks.
+ (defer_merging): New function.
+ (merge_types): If types are dummy, use defer_merging to combine them.
+ (verify_jvm_instructions): If invocation is invokeinterface and
+ target is dummy, assume target really is an interface.
+
+ * parse.y (patch_invoke): Break out call to java_create_object.
+
+ * lang.c (flag_verify_invocations): New.
+
+ * jcf-parse.c (load_class): If we've already failed to load a
+ class, don't try again.
+ (load_class): If we can't find a .class file, don't fail, but emit
+ a warning.
+ (parse_class_file): Don't act on dummy methods.
+
+ * java-tree.h (flag_verify_invocations): New.
+ (TYPE_DUMMY): New.
+ (lang_type.dummy_class): New field.
+ (java_create_object): New function.
+ (METHOD_DUMMY): New.
+
+ * expr.c (build_field_ref): Widen field offset.
+ (pop_type_0): If the type in stack_type_map is a TREE_LIST, check
+ that each of its elements is compatible with the one we're
+ popping.
+ (pop_type_0): Issue a warning to say that we need to generate a
+ runtime check.
+ (java_create_object): New function.
+ (build_field_ref): Only generate hard refs if we're not using
+ indirect dispatch.
+ (expand_java_field_op): If we're using !verify_invocations and we
+ see a missing field, generate a decl for it.
+
+ (expand_invoke): If a class doesn't have the method we seek and
+ we're using !flag_verify_invocations, generate a decl for the
+ method now.
+
+ (build_known_method_ref): Always use indirect dispatch via the
+ atable for static methods.
+
+ (expand_java_NEW): Break out object creation into new function,
+ java_create_object.
+
+ (can_widen_reference_to): Issue a warning to say that we need to
+ generate a runtime check.
+
+ * class.c (set_super_info): Inherit TYPE_DUMMY from sureclass.
+ (make_method_value): Also use index for interfaces.
+ (make_class_data): Skip dummy field for inherited data.
+ Don't build method array for dummy methods.
+ Set size_in_byte to -1 when using inirect dispatch
+ Don't build a hard class ref if we don't have a hard ref to our
+ superclass, or if we're using inirect dispatch.
+ Null out dispatch tables.
+
+ (layout_class_method): Don't complain about non-static method
+ overrides static method is method is artificial.
+
+ (build_static_field_ref): Disable atable references to static
+ fields for the time being.
+
+ (layout_class_methods): Check for CLASS_INTERFACE as
+ well as CLASS_ABSTRACT.
+
+2004-11-24 Steven Bosscher <stevenb@suse.de>
+
+ * class.c (make_class_data): Don't check flag_inline_functions.
+ * lang.c (flag_really_inline): Remove unused flag.
+ (java_handle_option): Don't set it here. Remove special handling
+ of flag_inline_functions for Java.
+ (java_init): Don't set flag_inline_trees here. Already done...
+ (java_post_options): ...here. Don't clear flag_inline_functions.
+
+2004-11-24 Steven Bosscher <stevenb@suse.de>
+
+ * java-gimplify.c (java_gimplify_labeled_block_expr): New function.
+ (java_gimplify_exit_block_expr): New function.
+ (java_gimplify_expr): Use them to gimplify EXIT_BLOCK_EXPR and
+ LABELED_BLOCK_EXPR.
+ * java-tree.def (LABELED_BLOCK_EXPR): Moved from tree.def.
+ (EXIT_BLOCK_EXPR): Likewise.
+ * java-tree.h (LABELED_BLOCK_LABEL): Moved from tree.h.
+ (LABELED_BLOCK_BODY): Likewise.
+ (EXIT_BLOCK_LABELED_BLOCK): Likewise.
+ * jcf-write.c (generate_bytecode_insns): Don't handle the unused
+ EXIT_BLOCK_RETURN operand. Use EXIT_BLOCK_LABELED_BLOCK instead of
+ TREE_OPERAND.
+ * lang.c (java_tree_inlining_walk_subtrees): Handle EXIT_BLOCK_EXPR.
+ (java_dump_tree): Use LABELED_BLOCK_LABEL, LABELED_BLOCK_BODY, and
+ EXIT_BLOCK_LABELED_BLOCK instead of TREE_OPERAND. Don't handle the
+ second operand of EXIT_BLOCK_EXPR.
+ * parse.y (find_expr_with_wfl): Use LABELED_BLOCK_BODY instead of
+ TREE_OPERAND.
+ (build_bc_statement): Use build1 to build EXIT_BLOCK_EXPR nodes.
+
+2004-11-23 Ben Elliston <bje@au.ibm.com>
+
+ * xref.h (xref_flag_value): Remove.
+ (xref_set_data, xref_get_data): Likewise.
+ (xref_set_current_fp): Likewise.
+ (XREF_NONE): Likewise.
+ (XREF_GET_DATA): Likewise.
+ * xref.c (xref_flag_value): Remove.
+ (xref_set_data, xref_get_data): Likewise.
+ (xref_set_current_fp): Likewise.
+
+2004-11-23 Ben Elliston <bje@au.ibm.com>
+
+ * gjavah.c (output_directory): Make static.
+ (temp_directory): Likewise.
+
+2004-11-15 Tom Tromey <tromey@redhat.com>
+
+ * decl.c (instn_ptr_type_node): Removed.
+ (lineNumbers_ptr_type_node): Removed.
+ (jint_type): Removed.
+ (jint_ptr_type): Removed.
+
+2004-11-09 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR java/15576
+ * check-init.c (check_init): Ignore DECL_EXPR.
+ * expr.c (always_initialize_class_p): Reenable.
+ (build_class_init): Use a variable to store the decl. Also use
+ boolean_false_node instead of integer_zero_node.
+ * parse.y (attach_init_test_initialization_flags): Add a decl_expr
+ to the block.
+
+2004-11-08 Tom Tromey <tromey@redhat.com>
+
+ PR java/16843:
+ * gjavah.c (HANDLE_END_FIELD): Call print_field_info when
+ generating a JNI header.
+ (print_field_info): Handle JNI headers.
+ (jni_print_float): Likewise.
+ (jni_print_double): Likewise.
+
2004-11-08 Andrew Pinski <pinskia@physics.uc.edu>
* decl.c (end_java_method): Remove duplicated code.
2004-11-06 Zack Weinberg <zack@codesourcery.com>
- Gerald Pfeifer <gerald@pfeifer.com>
+ Gerald Pfeifer <gerald@pfeifer.com>
* lex.h (HAVE_ICONV): Undefine if we do not have HAVE_ICONV_H
as well.
2004-11-02 Bryce McKinlay <mckinlay@redhat.com>
PR java/17265
- * class.c: Reinstate 2004-08-18 patch.
+ * class.c: Reinstate 2004-08-18 patch.
(make_local_function_alias): Don't create an alias for extern (native)
functions.
* lang.c (java_tree_inlining_walk_subtrees): Last arg is struct
pointer_set_t* now.
-
+
2004-10-13 Tom Tromey <tromey@redhat.com>
PR java/15578: