aboutsummaryrefslogtreecommitdiff
path: root/gcc/java
AgeCommit message (Collapse)AuthorFilesLines
2001-01-25* lex.c (java_read_char): Check for EOF from getc first.Richard Earnshaw2-2/+6
From-SVN: r39261
2001-01-24class.c (layout_class): Don't lay the superclass out if it's already being ↵Alexandre Petit-Bianco8-93/+139
laid out. 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. (http://gcc.gnu.org/ml/gcc-patches/2001-01/msg01812.html) From-SVN: r39230
2001-01-23configure.in: Enable libgcj on several additional platforms.Bryce McKinlay2-0/+5
* configure.in: Enable libgcj on several additional platforms. In gcc/java: * config-lang.in: Disable java by default. From-SVN: r39212
2001-01-23gcj.texi (Copying): New node.Tom Tromey2-0/+457
* gcj.texi (Copying): New node. Added copyright information. From-SVN: r39208
2001-01-21Various fixes to allow compiling a compressed .jar/.zip archive.Per Bothner6-82/+88
From-SVN: r39175
2001-01-21Minor optimization of static ggc roots.Per Bothner3-36/+36
* jcf-parse.c (parse_roots): New static field. (current_field, current_method, current_file_list): Replace by macros naming fields of parse_roots. (init_jcf_parse): Combine 3 ggc_add_tree_root calls to 1. * class.c (class_roots): New static field. (registered_class, fields_ident, info_ident, class_list): New macros naming fields of parse_roots. (build_static_field_ref): Don't register roots here. (layout_class): Static field list replaced by macro class_list. (init_class_processing): Call ggc_add_tree_root for 4 roots. Initialize fields_ident and info_ident here. From-SVN: r39174
2001-01-21jcf-parse.c (ggc_mark_jcf): New function.Per Bothner2-0/+30
* jcf-parse.c (ggc_mark_jcf): New function. (init_jcf_parse): Register current_jcf as ggc root. From-SVN: r39173
2001-01-21* lang.c (put_decl_node): Print method's name.Per Bothner2-2/+9
From-SVN: r39172
2001-01-21verify.c (VERIFICATION_ERROR_WITH_INDEX): New macro.Per Bothner2-5/+23
* verify.c (VERIFICATION_ERROR_WITH_INDEX): New macro. (verify_jvm_instructions): Use it, for better error messages on loads. From-SVN: r39171
2001-01-21verify.c (merge_type_state): Stil may have to merge even if LABEL_VERIFIED ↵Per Bothner2-1/+6
(label). * verify.c (merge_type_state): Stil may have to merge even if LABEL_VERIFIED (label). From-SVN: r39170
2001-01-21parse.y (method_header): Don't set the DECL_NAME of a FUNCTION_DECL to a ↵Per Bothner2-10/+5
EXPR_WITH_FILE_LOCATION - that... * parse.y (method_header): Don't set the DECL_NAME of a FUNCTION_DECL to a EXPR_WITH_FILE_LOCATION - that is just too fragile and wrong. From-SVN: r39169
2001-01-21expr.c (pop_type_0): Only return object_ptr_type_node on mismatch if ↵Per Bothner2-2/+7
expeting an interface type. * expr.c (pop_type_0): Only return object_ptr_type_node on mismatch if expeting an interface type. Refines Tom's change of 2000-09-12. From-SVN: r39168
2001-01-18gcj.texi (Input Options): Mention .java files.Per Bothner2-4/+8
2001-01-18 Per Bothner <per@bothner.com> * gcj.texi (Input Options): Mention .java files. From-SVN: r39123
2001-01-17lang-options.h (-Wunsupported-jdk11): Removed.Alexandre Petit-Bianco4-26/+8
2001-01-17 Alexandre Petit-Bianco <apbianco@cygnus.com> * lang-options.h (-Wunsupported-jdk11): Removed. * lang.c (flag_not_overriding): Deleted. (flag_static_local_jdk1_1): Likewise. (lang_W_options): Removed "unsupported-jdk11" entry. * parse.y (java_check_methods): Removed dead code. (http://gcc.gnu.org/ml/gcc-patches/2001-01/msg01479.html) From-SVN: r39107
2001-01-18Changes suggested by Per Bothner:Tom Tromey2-27/+45
* gcj.texi (Input Options): Don't mention input files. (Code Generation): Updated --main information. (Invoking jcf-dump): Mention that --javap is incomplete. From Alexandre Petit-Bianco: (Warnings): Don't mention -Wunsupported-jdk11. My stuff: (Compatibility): Mention JDK 1.2-ness of libraries. (Resources): Mention resources used when writing gcj. From-SVN: r39103
2001-01-17gcj.texi: New file.Tom Tromey4-2/+521
* gcj.texi: New file. * Make-lang.in ($(srcdir)/java/gcj.info): New target. (java.info): Depend on gcj.info. (java/gcj.dvi): New target. (java.dvi): Depend on gcj.dvi. (java.install-info): Wrote. From-SVN: r39101
2001-01-16expr.c (java_lang_expand_expr): Use TREE_SYMBOL_REFERENCED after having ↵Jeff Sturm2-2/+7
called make_decl_rtl. 2001-01-16 Jeff Sturm <jeff.sturm@appnet.com> * expr.c (java_lang_expand_expr): Use TREE_SYMBOL_REFERENCED after having called make_decl_rtl. (http://gcc.gnu.org/ml/gcc-patches/2001-01/msg01369.html) From-SVN: r39079
2001-01-15All files with updated copyright when applicable.Alexandre Petit-Bianco10-406/+868
2001-01-07 Alexandre Petit-Bianco <apbianco@cygnus.com> All files with updated copyright when applicable. * Make-lang.in (JVGENMAIN_OBS): Removed java/mangle.o. * class.c (mangle_class_field): Function removed. (append_gpp_mangled_type, mangle_static_field, mangle_field): Likewise. (utf8_cmp, cxx_keyword_p): Moved to lex.c. (build_class_ref): Call `java_mangle_class_field' instead of `mangle_class_field.' (build_dtable_decl): Rewritten to call `java_mangle_vtable.' (layout_class): Call `java_mangle_decl' instead of `mangle_static_field.' (cxx_keywords): Initialized static array moved to `lex.c.' (layout_class_method): Changed leading comment. Simplified to call `java_mangle_decl.' Local `ptr' moved in for loop body. * decl.c (lang_mark_tree): Mark field `package_list.' * java-tree.h (TYPE_PACKAGE_LIST): New macro. (struct lang_type): New field `package_list.' (unicode_mangling_length): Prototype removed. (append_gpp_mangled_name, append_gpp_mangled_classtype, emit_unicode_mangled_name): Likewise. (cxx_keyword_p): New prototype. (java_mangle_decl, java_mangle_class_field, java_mangle_class_field_from_string, java_mangle_vtable): Likewise. * jcf-parse.c (jcf_parse_source): Constify `file' argument to `build_expr_wfl.' * jvgenmain.c (main_method_prefix): Global variable removed. (main_method_suffix): Likewise. (do_mangle_classname): New function. (main): Call it. Format changed to accomodate new mangling scheme. * lex.c: (utf8_cmp): Conditionally prototyped. (cxx_keywords): Moved from class.c, conditionally defined. (utf8_cmp, cxx_keyword_p): Likewise. * mangle.c (obstack.h, ggc.h): Included. (mangle_field_decl): New function. (mangle_method_decl, mangle_type, mangle_pointer_type, mangle_array_type, mangle_record_type, find_compression_pointer_match, find_compression_array_match, find_compression_record_match, find_compression_array_template_match, set_type_package_list, entry_match_pointer_p, emit_compression_string, init_mangling, finish_mangling, compression_table_add, mangle_member_name): Likewise. (mangle_obstack): New global. (MANGLE_RAW_STRING): New macro. (unicode_mangling_length): Turned static. (append_unicode_mangled_name): Renamed from `emit_unicode_mangled_name.' Turned static. `mangle_obstack' replaces `obstack', removed from the parameter list. (append_gpp_mangled_name): Turned static. `mangle_obstack' replaces parameter `obstack', removed from the parameter list. Call `append_unicode_mangled_name' instead of `emit_unicode_mangled_name. (append_gpp_mangled_classtype): Removed. (compression_table, compression_next): New static variables. * parse.y (temporary_obstack): Extern declaration removed. (This is the new C++ ABI compatibility patch: http://gcc.gnu.org/ml/gcc-patches/2001-01/msg01225.html) From-SVN: r39031
2001-01-14Various patches to emit better messages on verification errors.Per Bothner4-78/+171
From-SVN: r39019
2001-01-14parse.y (java_complete_lhs case EXPR_WITH_FILE_LOCATION): If body is ↵Per Bothner3-3/+12
constant, return body without wrapper. * parse.y (java_complete_lhs case EXPR_WITH_FILE_LOCATION): If body is constant, return body without wrapper. (Improves constant folding.) * lex.c (build_wfl_node): Clear TREE_TYPE from returned node. From-SVN: r39017
2001-01-14expr.c (expand_java_field_op): Assigning to a final field outside an ↵Per Bothner2-2/+8
initializer does not violate JVM spec... * expr.c (expand_java_field_op): Assigning to a final field outside an initializer does not violate JVM spec, so should be warning, not error. (Sun's verifier does not complain - though MicroSoft's does.) From-SVN: r39013
2001-01-12g77spec.c (lang_specific_driver): Update copyright year to 2001.Joseph Myers3-2/+7
f: * g77spec.c (lang_specific_driver): Update copyright year to 2001. java: * gjavah.c (version), jcf-dump.c (version): Update copyright year to 2001. From-SVN: r38951
2001-01-11parse.y (resolve_expression_name): Permit instance variables from enclosing ↵Bryce McKinlay2-2/+11
context in super constructor call. * parse.y (resolve_expression_name): Permit instance variables from enclosing context in super constructor call. (resolve_qualified_expression_name): Permit enclosing class's qualified "this" in super constructor call. From-SVN: r38892
2001-01-10output.h (make_function_rtl): Remove prototype.Mark Mitchell5-18/+34
* output.h (make_function_rtl): Remove prototype. (make_decl_rtl): Likewise. * varasm.c (make_function_rtl): Remove. (make_decl_rtl): Determine top-levelness from DECL_CONTEXT, rather than from a third parameter. * tree.h (make_decl_rtl): Remove last parameter. * c-decl.c (builtin_function): Remove last argument in call to make_decl_rtl; use make_function_rtl instead of make_decl_rtl. (start_function): Likewise. * except.c (call_get_eh_context): Likewise. * expr.c (emit_block_move): Likewise. (clear_storage): Likewise. * profile.c (output_func_start_profiler): Likewise. * toplev.c (rest_of_decl_compilation): Likewise. * objc/objc-act.c (create_builtin_decl): Likewise. (synth_module_prologue): Likewise. (generate_static_reference): Likewise. (build_selector_reference_decl): Likewise. (build_class_reference_decl): Likewise. (build_objc_string_decl): Likewise. (build_protocol_reference): Likewise. * class.c (finish_struct_1): Remove last argument in call to make_decl_rtl; use make_function_rtl instead of make_decl_rtl. * decl.c (builtin_function): Likewise. (build_cp_library_fn): Likewise. (check_initializer): Likewise. (make_rtl_for_nonlocal_decl): Likewise. (cp_finish_decl): Likewise. (start_function): Likewise. * decl2.c (finish_anon_union): Likewise. * friend.c (do_friend): Likewise. * init.c (build_java_class_ref): Likewise. * method.c (make_thunk): Likewise. * pt.c (tsubst_friend_function): Likewise. * semantics.c (expand_body): Likewise. * com.c (ffecom_init_zero_): Remove last argument in call to make_decl_rtl; use make_function_rtl instead of make_decl_rtl. (ffecom_lookup_label_): Likewise. (builtin_function): Likewise. (start_function): Likewise. * class.c (build_utf8_ref): Remove last argument in call to make_decl_rtl; use make_function_rtl instead of make_decl_rtl. (build_class_ref): Likewise. (build_static_field_ref): Likewise. (get_dispatch_table): Likewise. (layout_class_method): Likewise. (emit_register_classes): Likewise. * constants.c (build_constant_data_ref): Likewise. * decl.c (builtin_function): Likewise. (create_primitive_vtable): Likewise. * expr.c (build_known_method_def): Likewise. (build_jni_stub): Likewise. (java_lang_expand_expr): Likewise. From-SVN: r38884
2001-01-10* jvspec.c (jvgenmain_spec): Omit -fencoding from cc1 invocation.Tom Tromey2-1/+5
From-SVN: r38874
2001-01-10[multiple changes]Alexandre Petit-Bianco5-20/+75
2001-01-08 Alexandre Petit-Bianco <apbianco@cygnus.com> * java-tree.h (lang_printable_name_wls): New prototype. * lang.c (put_decl_name): Removed dead code. Use DECL_CONTEXT rather than `current_class' to print type name. Don't prepend type names when printing constructor names. (lang_printable_name_wls): New function. * jcf-parse.c (jcf_parse_source): Pass NULL `file' argument to `build_expr_wfl', alway set EXPR_WFL_FILENAME_NODE. * parse.y (patch_method_invocation): Message tuned for constructors. (not_accessible_p): Grant `private' access from within enclosing contexts. 2001-01-05 Alexandre Petit-Bianco <apbianco@cygnus.com> * parse.y (patch_binop): Compute missing type in error situations. (http://gcc.gnu.org/ml/gcc-patches/2001-01/msg00752.html) From-SVN: r38870
2001-01-10c-lang.c (lang_hooks): Update.Neil Booth1-4/+8
* c-lang.c (lang_hooks): Update. (lang_decode_option): Remove. (lang_init_options): Rename c_init_options. * toplev.c (main): Use lang_hooks for lang_init_options and lang_decode_option. * toplev.h (lang_hooks): Add 2 new hooks. * tree.h: Remove lang_init_options and lang_decode_option. * cp/cp-tree.h (lang_decode_option): Rename cxx_decode_option. * cp/decl2.c: Similarly. * cp/lex.c (lang_init_options): Rename cxx_init_options. (lang_hooks): Update. * f/com.c (f_init, f_finish): Rename ffe_init, ffe_finish for consistency. (lang_init_options): Rename ffe_init_options. (lang_hooks): Update. (lang_decode_option): Remove. * java/lang.c (lang_init_options): Rename java_init_options. (lang_decode_option): Rename java_decode_option. (lang_hooks): Update. * objc/objc-act.c (lang_init_options): Rename objc_init_options. (lang_decode_option): Rename objc_decode_option. (lang_hooks): Update. From-SVN: r38856
2001-01-09c-lang.c (lang_hooks): Update.Neil Booth1-8/+6
* c-lang.c (lang_hooks): Update. (lang_init): Rename c_init. (lang_finish): Remove. * toplev.c (compile_file): Use lang_hooks for lang_init () and lang_finish (). * toplev.h (lang_hooks): Add init () and finish (). * tree.h (lang_init, lang_finish): Remove. * cp/tree.h (lang_init, lang_finish): Remove. * cp/decl2.c (cxx_post_options, lang_hooks): Move to cp/lex.c. * cp/lex.c (cxx_init, cxx_finish, cxx_post_options, lang_hooks): New. (lang_init, lang_finish): Remove. * f/com.c (lang_init, lang_finish): Rename f_init, f_finish. (lang_hooks): Update. * java/lang.c (lang_init): Rename java_init. (lang_finish): Remove. (lang_hooks): Update. * objc/objc-act.c (lang_init): Rename objc_init. (lang_finish): Remove. (lang_hoooks): Update. From-SVN: r38828
2001-01-08In gcc/java:Bryce McKinlay3-0/+7
* class.c (make_class_data): Push initial value for "arrayclass". * decl.c (init_decl_processing): Add new class field "arrayclass". In libjava: * java/lang/Class.h (_Jv_InitClass): Use __builtin_expect. (_Jv_NewArrayClass): Renamed from _Jv_FindArrayClass. (_Jv_GetArrayClass): New inline function. (arrayclass): New field. * prims.cc (_Jv_NewObjectArray): Use _Jv_GetArrayClass. Don't use _Jv_GetArrayElementFromElementType. (_Jv_NewPrimArray): Ditto. (_Jv_PrimClass constructor): Initialize "depth", "ancestors", and "idt" for completeness. Initialze "arrayclass" using _Jv_NewArrayClass. Set Modifier::ABSTRACT. * java/lang/natClassLoader.cc (_Jv_NewClass): Initialize "arrayclass". (_Jv_NewArrayClass): Renamed from _Jv_FindArrayClass. Now void. Now synchronized. Array classes are now referenced from elementClass->arrayclass. Don't use _Jv_FindClassInCache. Set array classes' accessibility flags correctly. Optimize so that all array classes share the same IDT. * java/lang/reflect/natArray.cc (newInstance): Use _Jv_GetArrayClass. * java/lang/reflect/natMethod.cc (_Jv_GetTypesFromSignature): Ditto. * java/lang/natClass.cc (_getFields): Increment offset. Prevent fields in superclasses from overwriting classes own fields. (_Jv_IsAssignableFrom): Check for NULL source idt instead of calling Modifier::isAbstract(). (null_idt): New static field. (_Jv_PrepareConstantTimeTables): Optimize case where class implements no interfaces. (_Jv_IndexOf): Made inline. * boehm.cc (_Jv_MarkObj): Mark "arrayclass" field. From-SVN: r38808
2001-01-07toplev.c (main): Call the front-end specific post_options hook if one is given.Neil Booth1-0/+3
* toplev.c (main): Call the front-end specific post_options hook if one is given. * toplev.h (struct_lang_hooks, lang_hooks): New. * c-lang.c (c_post_options, lang_hooks): Implement lang_hooks for the C front end. * cp/decl2.c (cxx_post_options, lang_hooks): Implement lang_hooks for the C++ front end. * objc/objc-act.c (objc_post_options, lang_hooks): Implement lang_hooks for the ObjC front end. * f/com.c (lang_hooks): Hooks for the Fortran front end. * java/lang.c (lang_hooks): Hooks for the Java front end. From-SVN: r38757
2001-01-06From patha@softlab.ericsson.se:Bryce McKinlay2-1/+7
* parse.y (switch_label): Use build, not build1, to construct DEFAULT_EXPR. From-SVN: r38745
2001-01-05lang-options.h: Bring comment in line with reality.Phil Edwards1-2/+2
2001-01-05 Phil Edwards <pme@sources.redhat.com> * cp/lang-options.h: Bring comment in line with reality. * f/lang-options.h: Likewise. * java/lang-options.h: Likewise. * objc/lang-options.h: Likewise. * ch/lang-options.h: Likewise. * f/g77.texi: And update the manual. From-SVN: r38719
2001-01-05cpp.texi: Update for -MP.Neil Booth3-6/+14
* cpp.texi: Update for -MP. Clarify behaviour of -MT. * cppinit.c (initialize_dependency_output): Update. (cpp_finish): Output dummy targets for -MP. (OPT_MP): New. (cpp_handle_option): Handle -MP. Don't quote -MT options. * cpplib.h (struct cpp_options): Add deps_phony_targets. * gcc.c (cpp_options): Update to handle -MP. * mkdeps.c (deps_add_target, deps_add_default_target): Update to quote only the default target. (deps_phony_targets): Insert a preceding newline. Rename from deps_dummy_targets for consistency. * mkdeps.h: Update java: * lang.c (lang_decode_option): Change -MA to -MP. * jcf-depend.c (jcf_dependency_add_target, jcf_dependency_set_target): Update to new prototype; do quote targets. (jcf_dependency_write): Update. From-SVN: r38707
2000-12-24Shorten primitive array allocation path:Bryce McKinlay3-6/+26
* decl.c (init_decl_processing): Use _Jv_NewPrimArray not _Jv_NewArray to create new primitive arrays. * expr.c (build_newarray): If generating native code, call soft_newarray_node with a reference to the primitive TYPE identifier instead of type_value. From-SVN: r38482
2000-12-18re GNATS gcj/373: (interface inner classes are implicitly static)Bryce McKinlay2-1/+12
Fix for PR gcj/373: * parse.y (create_class): Set ACC_STATIC if class is declared in an interface. From-SVN: r38365
2000-12-18Fix for PRs gcj/312 and gcj/253:Bryce McKinlay3-0/+51
* parse.y (valid_ref_assignconv_cast_p): Load classes for source and dest if they arn't already. * class.c (layout_class): Call maybe_layout_super_class on superinterfaces also, but only if compiling from bytecode. From-SVN: r38363
2000-12-16jcf-parse.c (jcf_parse_source): Set wfl_operator if not already set.Tom Tromey2-1/+9
* jcf-parse.c (jcf_parse_source): Set wfl_operator if not already set. From-SVN: r38295
2000-12-15boehm.c (mark_reference_fields): Change test to correctly detect bitmap ↵Andrew Haley2-1/+6
overflow. 2000-12-14 Andrew Haley <aph@redhat.com> * boehm.c (mark_reference_fields): Change test to correctly detect bitmap overflow. From-SVN: r38293
2000-12-15config-lang.in (lang_dirs): Added.Andreas Jaeger2-0/+5
2000-12-15 Andreas Jaeger <aj@suse.de> * config-lang.in (lang_dirs): Added. From-SVN: r38280
2000-12-15parse.y (end_artificial_method_body): Fixed undefined behavior.Alexandre Petit-Bianco2-1/+10
2000-12-15 Alexandre Petit-Bianco <apbianco@cygnus.com> * parse.y (end_artificial_method_body): Fixed undefined behavior. Credits go to rth for finding it. (http://gcc.gnu.org/ml/gcc/2000-12/msg00495.html) From-SVN: r38278
2000-12-14* parse.y (check_static_final_variable_assignment_flag): Fix spelling.Mike Stump2-1/+5
From-SVN: r38241
2000-12-13Make-lang.in (JAVA_LEX_C): Added chartables.h.Tom Tromey6-364/+3616
* Make-lang.in (JAVA_LEX_C): Added chartables.h. * lex.c (java_ignorable_control_p): Removed. (java_letter_or_digit_p): Removed. (java_start_char_p): New function. (java_read_char): Return `int', not `unicode_t'. Changed callers. (java_read_unicode): Likewise. (java_read_unicode_collapsing_terminators): Likewise. (java_get_unicode): Likewise. (java_new_lexer): Initialize hit_eof. (java_parse_end_comment): Take `int' argument. (java_parse_doc_section): Likewise. (java_parse_escape_sequence): Don't allow backlash-newline. Return `int'. * lex.h (JAVA_DIGIT_P): Removed. (_JAVA_LETTER_OR_DIGIT_P): Removed. (_JAVA_IDENTIFIER_IGNORABLE): Removed. (JAVA_START_CHAR_P): Renamed from JAVA_ID_CHAR_P. (JAVA_PART_CHAR_P): New macro. (UEOF): Now -1. (JAVA_CHAR_ERROR): Now -2. (java_lexer): New field `hit_eof'. * chartables.h: New file. * gen-table.pl: new file. From-SVN: r38237
2000-12-13parse.y (java_complete_lhs): Only allow compound assignment of reference ↵Tom Tromey2-0/+14
type if type is String. * parse.y (java_complete_lhs): Only allow compound assignment of reference type if type is String. Co-Authored-By: Alexandre Petit-Bianco <apbianco@cygnus.com> From-SVN: r38236
2000-12-12configure.in: Simplify language enabling/disabling code.Alexandre Oliva1-1/+3
* configure.in: Simplify language enabling/disabling code. * configure: Rebuilt. * ch/config-lang.in (target_libs): Set. (build_by_default): Set to no. * cp/config-lang.in (target_libs): Set. * f/config-lang.in (target_libs): Set. * java/config-lang.in (target_libs): Set. * objc/config-lang.in (target_libs): Set. From-SVN: r38207
2000-12-10jcf-io.c (find_class): Correct the logic that tests to see if a .java file ↵Mo DeJong2-1/+7
is newer than its .class file. 2000-12-07 Mo DeJong <mdejong@redhat.com> * jcf-io.c (find_class): Correct the logic that tests to see if a .java file is newer than its .class file. The compiler was incorrectly printing a warning when file mod times were equal. (http://gcc.gnu.org/ml/gcc-patches/2000-12/msg00530.html) From-SVN: r38177
2000-12-09Top level ChangeLog:Alexandre Petit-Bianco3-5/+10
2000-12-09 Alexandre Petit-Bianco <apbianco@cygnus.com> * libjava: Imported from /cvs/java. * libffi: Likewise. * Boehm-gc: Likewise. libjava/ChangeLog: 2000-12-09 Alexandre Petit-Bianco <apbianco@cygnus.com> * Makefile.am (data_DATA): libgcj.jar replaces libgcj.zip. (ZIP): Points at fastjar instead of zip. (libgcj_la_DEPENDENCIES): libgcj.jar replaces libgcj.zip. (libgcj_la_LDFLAGS): Correctly point at libsupc++. (libgcjx_la_DEPENDENCIES): libgcj.jar replaces libgcj.zip. (libgcjx_la_LDFLAGS): Correctly point at libsupc++. ($(java_source_files:.java=.class):): libgcj.jar replaces libgcj.zip. ($(x_java_source_files:.java=.class):): Likewise. (libgcj.jar:): Replaces libgcj.zip:, builds libgcj.jar and uses fastar's flags. (CLEANFILES): libgcj.jar replaces libgcj.zip. (java/lang/ClassLoader.h:): Depends on libgcj.jar. (gnu/gcj/runtime/FirstThread.h:, java/lang/Thread.h:, java/lang/String.h:, java/lang/reflect/Constructor.h:, java/lang/reflect/Field.h:, java/lang/reflect/Method.h:, gnu/gcj/runtime/VMClassLoader.h:, java/io/ObjectInputStream$$GetField.h:, java/io/ObjectOutputStream$$PutField.h:, header-check:): Likewise. (Makefile.in): Rebuilt. gcc/java/ChangeLog: 2000-12-09 Alexandre Petit-Bianco <apbianco@cygnus.com> * Make-lang.in (java/jcf-path.o:): libgcj.jar replaces libgcj.zip. jcf-path.c: Likewise. From-SVN: r38167
2000-12-10zipfile.h (ZipDirectory): Declare size, uncompressed_size, filestart and ↵Anthony Green2-4/+9
filename_length as int values. * zipfile.h (ZipDirectory): Declare size, uncompressed_size, filestart and filename_length as int values. From-SVN: r38165
2000-12-08safe-ctype.h: New file.Zack Weinberg2-368/+372
include: * safe-ctype.h: New file. libiberty: * safe-ctype.c: New file. * Makefile.in (CFILES): Add safe-ctype.c. (REQUIRED_OFILES): Add safe-ctype.o. * argv.c: Define ISBLANK and use it, not isspace. * basename.c, cplus-dem.c, fnmatch.c, pexecute.c, strtod.c, strtol.c, strtoul.c: Include safe-ctype.h, not ctype.h. Use uppercase ctype macros. Don't test ISUPPER(c)/ISLOWER(c) before calling TOLOWER(c)/TOUPPER(c). gcc: * Makefile.in (HOST_RTL): Add safe-ctype.o. (safe-ctype.o): New rule. * system.h: Include safe-ctype.h, not ctype.h. No need to wrap ctype macros. * cpphash.h: Zap IStable and related macros. Define is_* in terms of safe-ctype.h macros. * cppinit.c: Delete the IStable and all related code. * tradcpp.c: Delete is_idchar, is_idstart, is_hor_space, and is_space arrays. Delete initialize_char_syntax. Change all references to the above arrays to use macros instead. * tradcpp.h: Define is_idchar, is_idstart, is_space, and is_nvspace in terms of safe_ctype.h's macros. * tradcif.y: is_idchar, is_idstart are macros not arrays. * config/i370/i370.c, config/winnt/dirent.c, config/winnt/fixinc-nt.c, config/winnt/ld.c: Use uppercase ctype macros. If we included ctype.h, include safe-ctype.h instead. * fixinc/fixfixes.c: Use uppercase ctype macros. Don't test ISLOWER(c) before calling TOUPPER(c). * fixinc/fixincl.c (extract_quoted_files): Simplify out some gunk. * fixinc/gnu-regex.c: Include safe-ctype.h, not ctype.h. No need to wrap ctype macros. Don't test ISUPPER(x) before calling TOLOWER(x). gcc/ch: * lex.c: Don't bother checking whether ISUPPER(c) before calling TOLOWER(c). Don't bother checking whether isascii(c) before testing ISSPACE(c); ISSPACE(c) includes '\n'. gcc/f: * Make-lang.in: Link f/fini with safe-ctype.o. * bad.c: Don't test ISUPPER(c) || ISLOWER(c) before calling TOUPPER(c). * com.c: Use TOUPPER, not ffesrc_toupper. * fini.c: Don't test ISALPHA(c) before calling TOUPPER(c)/TOLOWER(c). * intrin.c: Don't test IN_CTYPE_DOMAIN(c). * src.c: Delete ffesrc_toupper_ and ffesrc_tolower_ and their initializing code; use TOUPPER and TOLOWER instead of ffesrc_toupper and ffesrc_tolower. * src.h: Don't declare ffesrc_toupper_ or ffesrc_tolower_. Don't define ffesrc_toupper or ffesrc_tolower. gcc/java: * jvgenmain.c: Use ISPRINT not isascii. From-SVN: r38124
2000-12-06parse.y (end_artificial_method_body): Fixed typo.Alexandre Petit-Bianco2-1/+5
2000-12-06 Alexandre Petit-Bianco <apbianco@cygnus.com> * parse.y (end_artificial_method_body): Fixed typo. (http://gcc.gnu.org/ml/gcc-patches/2000-12/msg00320.html) From-SVN: r38071
2000-12-06[multiple changes]Alexandre Petit-Bianco6-114/+573
2000-10-18 Alexandre Petit-Bianco <apbianco@cygnus.com> * jcf-write.c (OP1): Update `last_bc'. (struct jcf_block): Fixed indentation and typo in comments. New field `last_bc'. (generate_bytecode_insns): Insert `nop' if `jsr' immediately follows `monitorenter'. * parse.y (patch_synchronized_statement): New local `tmp'. Call `patch_string'. Fixes gcj/232. 2000-10-13 Alexandre Petit-Bianco <apbianco@cygnus.com> * check-init.c (check_init): Fixed leading comment. Use LOCAL_FINAL_P. * decl.c (push_jvm_slot): Use MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC. (give_name_to_locals): Likewise. (lang_mark_tree): Handle FIELD_DECL. Register `am' and `wfl' fields in lang_decl_var. * java-tree.h (DECL_FUNCTION_SYNTHETIC_CTOR, DECL_FUNCTION_ALL_FINAL_INITIALIZED): New macros. (FIELD_INNER_ACCESS): Removed ugly cast, macro rewritten. (FIELD_INNER_ACCESS_P, DECL_FIELD_FINAL_IUD, DECL_FIELD_FINAL_LIIC, DECL_FIELD_FINAL_IERR, DECL_FIELD_FINAL_WFL): New macros. (LOCAL_FINAL): Rewritten. (LOCAL_FINAL_P, FINAL_VARIABLE_P, CLASS_FINAL_VARIABLE_P MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC): New macros. (struct lang_decl): Fixed comments. Added `synthetic_ctor' and `init_final' fields. (struct lang_decl_var): Fixed leading comment. Added `am', `wfl', `final_uid', `final_liic', `final_ierr' and `local_final' fields. (TYPE_HAS_FINAL_VARIABLE): New macro. (struct lang_type): Added `afv' field. * parse.y (check_static_final_variable_assignment_flag): New function. (reset_static_final_variable_assignment_flag): Likewise. (check_final_variable_local_assignment_flag): Likewise. (reset_final_variable_local_assignment_flag): Likewise. (check_final_variable_indirect_assignment): Likewise. (check_final_variable_global_assignment_flag): Likewise. (add_inner_class_fields): Use LOCAL_FINAL_P. (register_fields): Handle local finals and final variables. (craft_constructor): Set DECL_FUNCTION_SYNTHETIC_CTOR. (declare_local_variables): Call MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC. (source_start_java_method): Call MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC on local finals. (java_complete_expand_methods): Loop to set TYPE_HAS_FINAL_VARIABLE. Call `reset_final_variable_local_assignment_flag' and `check_final_variable_local_assignment_flag' accordingly before and after constructor expansion. Call `reset_static_final_variable_assignment_flag' before expanding <clinit> and after call `check_static_final_variable_assignment_flag' if the current_class isn't an interface. After all methods have been expanded, call `check_final_variable_global_assignment_flag' and `check_static_final_variable_assignment_flag' if the current class is an interface. (maybe_yank_clinit): Fixed typo in comment. (build_outer_field_access_methods): Removed old sanity check. Use FIELD_INNER_ACCESS_P. Call MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC. Don't create access methods for finals. (resolve_field_access): Use `CLASS_FINAL_VARIABLE_P'. (java_complete_tree): Likewise. Reset DECL_FIELD_FINAL_IUD if existing DECL_INIT has been processed. (java_complete_lhs): Likewise. (check_final_assignment): Filter input on `lvalue''s TREE_CODE. Test for COMPONENT_REF to get to the FIELD_DECL. Implemented new logic. (patch_assignment): Use LOCAL_FINAL_P. (fold_constant_for_init): Reset DECL_FIELD_FINAL_IUD if DECL_INITIAL is nullified. Fixes gcj/163. 2000-10-09 Alexandre Petit-Bianco <apbianco@cygnus.com> * parse.y (pop_current_osb): New function. (array_type:): Use `dims:', changed actions accordingly. Suggested by Anthony Green. (array_creation_expression:): Used pop_current_osb. (cast_expression:): Likewise. (search_applicable_method_list): Fixed indentation. 2000-10-08 Anthony Green <green@redhat.com> * parse.y (array_type_literal): Remove production. (type_literals): Refer to array_type, not array_type_literal. (http://gcc.gnu.org/ml/gcc-patches/2000-12/msg00317.html) From-SVN: r38070