Commit Graph

468 Commits

Author SHA1 Message Date
Pekka Nikander
a0f4cca642 re GNATS gcj/82 (code generation for jvm IRETURN fails on boolean/byte/short methods if INT_TYPE_SIZE < 32)
Wed Nov 03 02:16:00 PST 1999  Pekka Nikander  <pekka.nikander@hut.fi>

	* decl.c (INT_TYPE_SIZE): Define if necessary.
	(expand_java_return): Handle the case of a native integer smaller
 	than a JVM integer.

(Fix to the Java PR #82:
  http://sourceware.cygnus.com/ml/java-prs/1999-q4/msg00078.html)

From-SVN: r32051
2000-02-18 10:17:37 -08:00
Martin v. Löwis
8b97e23b76 gcc.texi (Bug Reporting): Refer to bugs.html.
* gcc.texi (Bug Reporting): Refer to bugs.html.
	(Bug Lists): Likewise.
	* system.h (GCCBUGURL): New preprocessor define.
	* rtl.c (fancy_abort): Use it.
	* gcc.c (main): Likewise.
	* typeck2.c (my_friendly_abort): Use GCCBUGURL.
	* g77spec.c (lang_specific_driver): Use GCCBUGURL.
	* gjavah.c (help): Use GCCBUGURL.
	* jv-scan.c (help): Likewise.
	* jcf-dump.c (help): Likewise.

From-SVN: r32049
2000-02-18 12:26:50 +00:00
Zack Weinberg
33ae9bdf30 Makefile.in (PARSE_C, [...]): Move dependencies on lex.c, lex.h, and PARSE_H to...
* Makefile.in (PARSE_C, PARSE_SCAN_C): Move dependencies on
	lex.c, lex.h, and PARSE_H to...
	(parse.o, parse-scan.o): ...here, respectively.

	* lex.c: Split out code that may trigger SIGFPE from yylex()
	to its own function.
	* lex.h (JAVA_FLOAT_RANGE_ERROR): Don't set value.

From-SVN: r32025
2000-02-17 04:19:34 +00:00
Kaveh R. Ghazi
4746ee266f configure (gcc_version): When setting, narrow search to lines containing `version_string'.
* configure (gcc_version): When setting, narrow search to
	lines containing `version_string'.

gcc:
	* version.c: Include gansidecl.h and version.h.

	* version.h: Wrap entire file in macro __GCC_VERSION_H__.

	* configure.in (gcc_version): When setting, narrow search to
	lines containing `version_string'.

	* Makefile.in (mainversion): Likewise.
	(GCC_H): New variable.
	(gcc.h): Delete target.
	(gcc.o, gccspec.o, cppspec.o): Depend on $(GCC_H), not gcc.h.
	(version.o): Depend on version.h.
	(dbxout.o): Don't depend on gcc.h.

gcc/cp:
	* Make-lang.in (g++spec.o): Depend on $(GCC_H), not gcc.h.

gcc/f:
	* Make-lang.in (g77spec.o): Depend on $(GCC_H), not gcc.h.

gcc/java:
	* Make-lang.in (jvspec.o): Depend on $(GCC_H), not gcc.h.

libf2c:
	* configure.in (gcc_version): When setting, narrow search to
	lines containing `version_string'.

From-SVN: r32009
2000-02-16 16:22:47 +00:00
Joerg Brunsmann
a003f638ee gjavah.c: Delete ACC_VISIBILITY define.
Mon Jan 18 14:30:09 2000  Joerg Brunsmann  <joerg.brunsmann@fernuni-hagen.de>

	* gjavah.c: Delete ACC_VISIBILITY define.
	* jcf.h: Add ACC_VISIBILITY define.
	* parse.y: final: rule tagged <value>.
	(java_check_regular_methods): Use ACC_VISIBILITY define for
	default package access check.
	(local_variable_declaration_statement): Use final: rule.

From-SVN: r31992
2000-02-15 14:54:21 -08:00
Tom Tromey
78de74bea9 gjavah.c (jni_print_char): New function.
* gjavah.c (jni_print_char): New function.
	(print_full_cxx_name): Use it.
	(decode_signature_piece): Likewise.
	(print_cxx_classname): Likewise.

From-SVN: r31989
2000-02-15 22:17:55 +00:00
Kaveh R. Ghazi
9f8f4efee3 Makefile.in (TREE_H, [...]): Depend on version.h.
* Makefile.in (TREE_H, collect2.o, gcc.h, mips-tfile.o, cccp.o,
	cpphash.o, cppinit.o, protoize.o, unprotoize.o): Depend on version.h.

	* cccp.c: Include version.h and/or don't declare `version_string'.
	* collect2.c: Likewise.
	* alpha.c: Likewise.
	* arm/aof.h: Likewise.
	* arm/coff.h: Likewise.
	* arm/elf.h: Likewise.
	* arm/pe.h: Likewise.
	* arm/tcoff.h: Likewise.
	* arm/telf.h: Likewise.
	* arm/tpe.h: Likewise.
	* arm/vxarm.h: Likewise.
	* convex/convex.c: Likewise.
	* i386/dgux.c: Likewise.
	* i386/sun386.h: Likewise.
	* m88k/m88k.c: Likewise.
	* mcore/mcore-pe.h: Likewise.
	* mips/mips.h: Likewise.
	* romp/romp.h: Likewise.
	* sh/sh.c: Likewise.
	* cpphash.c: Likewise.
	* cppinit.c: Likewise.
	* dwarf2out.c: Likewise.
	* dwarfout.c: Likewise.
	* gcc.c: Likewise.
	* gcc.h: Likewise.
	* mips-tfile.c: Likewise.
	* protoize.c: Likewise.
	* toplev.c: Likewise.
	* tree.h: Likewise.

	* version.c (version_string): Constify a char*.

	* version.h: New file.

ch:
	* grant.c: Don't declare `version_string'.

f:
	* g77spec.c: Don't declare `version_string'.

java:
	* Makefile.in (jv-scan, jcf-dump, gcjh): Depend on and link with
	version.o.
	(jcf-dump.o, gjavah.o, jv-scan.o): Depend on version.h.

	* gjavah.c: Include version.h.

	* jcf-dump.c: Likewise.

	* jv-scan.c: Likewise.

From-SVN: r31984
2000-02-15 16:36:35 +00:00
Kaveh R. Ghazi
ef86eabb6c except.c (maybe_start_try): Remove excess argument to `check_start_handlers'.
* except.c (maybe_start_try): Remove excess argument to
	`check_start_handlers'.

From-SVN: r31900
2000-02-10 19:10:07 +00:00
Kaveh R. Ghazi
ae0a06c54b * except.c (check_start_handlers): Prototype.
From-SVN: r31896
2000-02-10 16:48:43 +00:00
Andrew Haley
71600a4ae0 decl.c (clear_binding_level): Remove excess initializer.
2000-02-09  Andrew Haley  <aph@cygnus.com>

        * decl.c (clear_binding_level): Remove excess initializer.
        (maybe_poplevels): Remove unused variable.
        (force_poplevels): Ditto.
        (struct binding_level): Add comment.

From-SVN: r31870
2000-02-09 20:38:02 +00:00
Andrew Haley
e8b22dd136 java-except.h (struct eh_range): Add `expanded' field.
2000-01-25  Andrew Haley  <aph@cygnus.com>

        * java-except.h (struct eh_range): Add `expanded' field.
        (maybe_start_try): Add end_pc arg.
        (maybe_end_try): Ditto.
	* java-tree.h (force_poplevels): new function.
        * expr.c (expand_byte_code): Don't call maybe_start_try or
        maybe_end_try.
        * except.c (add_handler): Reset expanded.
        (expand_start_java_handler): Set expanded.
        (check_start_handlers): Don't expand a start handler that's
        already been expanded.
        (maybe_start_try): Add end_pc arg.  Only expand a handler which
        ends after end_pc.
	(expand_end_java_handler): call force_poplevels.
	(force_poplevels): new function.
        * decl.c (binding_level): Add start_pc of binding level.
        (maybe_pushlevels): Call maybe_start_try when pushing binding
        levels.
        (maybe_poplevels): Call maybe_end_try when popping binding levels.
        (LARGEST_PC): Define.
        (clear_binding_level): Use LARGEST_PC.

	* java-tree.h (DEBUG_JAVA_BINDING_LEVELS): new define.
	* decl.c (DEBUG_JAVA_BINDING_LEVELS): new define.
	(binding_depth, is_class_level, current_pc): new variables.
        (struct binding_level): ditto.
	(indent): new function.
	(push_jvm_slot): add debugging info.
	(maybe_pushlevels): ditto.
	(maybe_poplevels): ditto.
	(pushlevel): ditto.
	(poplevel): ditto.
	(start_java_method): ditto.
	(give_name_to_locals): comment only.
	* except.c (binding_depth, is_class_level, current_pc):
	new variables.
	(expand_start_java_handler): add debugging info.
	(expand_end_java_handler): ditto.

From-SVN: r31861
2000-02-09 14:08:44 +00:00
Kaveh R. Ghazi
5ca1627b6d gjavah.c (overloaded_jni_method_exists_p): Add prototype.
* gjavah.c (overloaded_jni_method_exists_p): Add prototype.
       (print_name_for_stub_or_jni, process_file): Constify a char*.

From-SVN: r31813
2000-02-06 04:33:10 +00:00
Tom Tromey
d8b6d4cf40 * jcf-io.c (jcf_print_utf8_replace): Handle UTF-8 input.
From-SVN: r31779
2000-02-03 19:09:54 +00:00
Scott Bambrough
2c2f0e546b javaop.h (WORDS_TO_DOUBLE): Allow WORDS_TO_DOUBLE to assemble doubles correctly when...
2000-01-31  Scott Bambrough  <scottb@netwinder.org>

	* gcc/java/javaop.h (WORDS_TO_DOUBLE): Allow WORDS_TO_DOUBLE to
	assemble doubles correctly when HOST_FLOAT_WORDS_BIG_ENDIAN is
	defined to be 1.

From-SVN: r31777
2000-02-03 18:45:45 +00:00
Tom Tromey
ef2aac99d4 Make-lang.in (java.mostlyclean): Remove executables in `mostlyclean'.
* Make-lang.in (java.mostlyclean): Remove executables in
	`mostlyclean'.

From-SVN: r31776
2000-02-03 18:39:48 +00:00
Scott Bambrough
9b4a08f945 gjavah.c (D_NAN_MASK): Alternate definition required when HOST_FLOAT_WORDS_BIG_ENDIAN is defined to be 1.
2000-01-31  Scott Bambrough  <scottb@netwinder.org>

	* gcc/java/gjavah.c (D_NAN_MASK): Alternate definition required when
	HOST_FLOAT_WORDS_BIG_ENDIAN is defined to be 1.
	(java_float_finite): Convert to use union Word from javaop.h.
	(java_double_finite): Convert to use union DWord from javaop.h.

From-SVN: r31768
2000-02-03 06:46:30 +00:00
Tom Tromey
de3807234a gjavah.c (options): Added `jni' entry.
* gjavah.c (options): Added `jni' entry.
	(help): Document -jni.
	(flag_jni): New global.
	(process_file): Handle JNI output.  Don't print text from
	-prepend, -add, etc, when generating stubs.  Only remove `.class'
	suffix if it actually exists.
	(main): Create a `.c' file when run with `--jni --stubs'.  Create
	correct output file name with `--jni'.
	(print_include): Mangle header name differently in JNI case.
	(HANDLE_METHOD): In JNI mode, call print_method_info to generate
	method list.
	(print_method_info): Handle JNI case.  Put signature info into
	method name.  Handle case when STREAM is NULL.
	(print_name_for_stub_or_jni): New function.
	(print_stub_or_jni): Renamed from `print_stub'.  Handle JNI.
	(print_cxx_classname): Handle JNI.
	(print_full_cxx_name): Likewise.
	(decode_signature_piece): Likewise.
	(overloaded_jni_method_exists_p): New function.
	(struct method_name): Added `signature' and `sig_length' fields.
	(HANDLE_END_FIELD): Do nothing in JNI mode.

From-SVN: r31767
2000-02-03 06:13:46 +00:00
Tom Tromey
c89c53eb67 jv-scan.c: Include version.c, <getopt.h>.
* jv-scan.c: Include version.c, <getopt.h>.
	(LONG_OPT, OPT_HELP, OPT_VERSION): New macros.
	(options): New array.
	(usage): New function.
	(version): New function.
	(main): Use getopt_long to parse command line.
	* jcf-dump.c: Include version.c, <getopt.h>.
	(LONG_OPT, OPT_classpath, OPT_CLASSPATH, OPT_HELP, OPT_VERSION,
	OPT_JAVAP): New macros.
	(options): New array.
	(usage): Return `void'.  Changed message.
	(help): New function.
	(version): New function.
	(main): Use getopt_long_only to parse command line.
	* gjavah.c: Include <getopt.h>.
	(LONG_OPT, OPT_classpath, OPT_CLASSPATH, OPT_HELP, OPT_TEMP,
	OPT_VERSION, OPT_PREPEND, OPT_FRIEND, OPT_ADD, OPT_APPEND, OPT_M,
	OPT_MM, OPT_MG, OPT_MD, OPT_MMD): New macros.
	(options): New array.
	(java_no_argument): Removed.
	(help): Updated with missing options.
	(main): Use getopt_long_only to parse command line.
	(usage): Changed message.

From-SVN: r31765
2000-02-02 21:55:39 +00:00
Anthony Green
105a8d1c0e jcf-write.c (generate_bytecode_insns): Use TYPE_IS_WIDE to determine how many stack slots to pop.
* jcf-write.c (generate_bytecode_insns): Use TYPE_IS_WIDE to
        determine how many stack slots to pop.

From-SVN: r31709
2000-01-31 05:36:56 +00:00
Alexandre Petit-Bianco
f8989a66b8 [multiple changes]
2000-01-29  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* parse.y (formal_parameter:): Set `$$' to NULL_TREE for better
	error handling/recovery.
	* java-tree.h (SYNCHRONIZED_EXPR): Fixed typo in comment.

Wed Jan 12 20:20:11 2000  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* jcf-write.c (generate_bytecode_insns): binop: Change the type of
	the shift value to int. Fixed typo in comment.

From-SVN: r31695
2000-01-29 14:40:07 -08:00
Andrew Haley
f85cedde61 jcf-write.c (emit_goto): RESERVE 3 bytes for insn.
2000-01-27  Andrew Haley  <aph@cygnus.com>

        * jcf-write.c (emit_goto): RESERVE 3 bytes for insn.
        (emit_if): Ditto.
        (emit_jsr): Ditto.

From-SVN: r31647
2000-01-27 19:09:14 +00:00
Kaveh R. Ghazi
2884c41e1c parse.h (OBSOLETE_MODIFIER_WARNING): Don't use ANSI string concatenation.
* parse.h (OBSOLETE_MODIFIER_WARNING): Don't use ANSI string
	concatenation.
	(OBSOLETE_MODIFIER_WARNING2): New macro allowing two args.

	* parse.y (register_fields): Don't pass a format specifier to
	OBSOLETE_MODIFIER_WARNING.
	(check_abstract_method_header): Use OBSOLETE_MODIFIER_WARNING2
	instead of OBSOLETE_MODIFIER_WARNING, and don't pass a format
	specifier.
	(check_modifiers): Change function into a macro.
	(check_class_interface_creation): Pass a literal format string.

From-SVN: r31614
2000-01-25 18:29:02 +00:00
Kaveh Ghazi
0a06884142 Fix typo in ChangeLog
From-SVN: r31551
2000-01-21 20:59:01 +00:00
Kaveh R. Ghazi
df32d2ce42 buffer.h: PROTO -> PARAMS.
* buffer.h: PROTO -> PARAMS.
        * check-init.c: Likewise.
        * class.c: Likewise.
        * constants.c: Likewise.
        * convert.h: Likewise.
        * decl.c: Likewise.
        * except.c: Likewise.
        * expr.c: Likewise.
        * gjavah.c: Likewise.
        * java-except.h: Likewise.
        * java-tree.h: Likewise.
        * jcf-depend.c: Likewise.
        * jcf-dump.c: Likewise.
        * jcf-parse.c: Likewise.
        * jcf-path.c: Likewise.
        * jcf-reader.c: Likewise.
        * jcf-write.c: Likewise.
        * jcf.h: Likewise.
        * jv-scan.c: Likewise.
        * jvgenmain.c: Likewise.
        * jvspec.c: Likewise.
        * lang.c: Likewise.
        * lex.c: Likewise.
        * lex.h: Likewise.
        * parse-scan.y: Likewise.
        * parse.h: Likewise.
        * parse.y: Likewise.
        * typeck.c: Likewise.
        * verify.c: Likewise.
        * xref.c: Likewise.
        * xref.h: Likewise.
        * zextract.c: Likewise.
        * zipfile.h: Likewise.

From-SVN: r31550
2000-01-21 20:57:00 +00:00
Joerg Brunsmann
18990de52b re GNATS gcj/128 (weak error message when expecting final modifier)
Mon Jan 17 11:58:17 2000  Joerg Brunsmann  <joerg.brunsmann@fernuni-hagen.de>

        * parse.y (format_parameter:): Use final: rule instead of modifiers:.
        (final:): New rule.

Joerg Brunsmann's contribution to fix the Java PR #128.

From-SVN: r31477
2000-01-17 14:54:30 -08:00
Tom Tromey
9b4579b3bb * gjavah.c (print_field_info): Allow non-static final fields.
From-SVN: r31466
2000-01-17 18:25:37 +00:00
Anthony Green
c52b57714b parse.y (build_string_concatenation): Only use StringBuffer(String) shortcut if String arg is constant.
2000-01-16  Anthony Green  <green@cygnus.com>

	* parse.y (build_string_concatenation): Only use
	StringBuffer(String) shortcut if String arg is constant.

From-SVN: r31450
2000-01-16 23:56:06 +00:00
Mumit Khan
51149cc88d jcf-path.c: Delete PATH_SEPARATOR and DIR_SEPARATOR macros.
2000-01-11  Mumit Khan  <khan@xraylith.wisc.edu>

	* jcf-path.c: Delete PATH_SEPARATOR and DIR_SEPARATOR macros.
	* jcf-write.c: Likewise.
	* parse.y: Likewise.
	* parse.c: Regenerate.

From-SVN: r31344
2000-01-12 05:21:12 +00:00
Anthony Green
2d54440c96 jcf-write.c (generate_bytecode_insns): Emit invokeinterface bytecodes in the correct order.
* jcf-write.c (generate_bytecode_insns): Emit invokeinterface
	bytecodes in the correct order.

From-SVN: r31301
2000-01-10 01:26:27 +00:00
Kaveh R. Ghazi
2cc60d1641 * Makefile.in (jcf-dump, gcjh): Move ../errors.o before $(LIBS).
From-SVN: r31294
2000-01-09 14:30:28 +00:00
Alexandre Petit-Bianco
6f9c87166a expr.c (java_lang_expand_expr): Switch to permanent obstack before calling expand_eh_region_start and...
Wed Dec  8 15:33:26 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * expr.c (java_lang_expand_expr): Switch to permanent obstack
        before calling expand_eh_region_start and expand_start_all_catch.
        * except.c (expand_start_java_handler): Switch to permanent
        obstack before calling expand_eh_region_start.
        (expand_end_java_handler): Switch to permanent obstack before
        calling expand_start_all_catch.

From-SVN: r31284
2000-01-07 17:59:33 -08:00
Anthony Green
f626e9fa21 expr.c (java_lang_expand_expr): Switch to permanent obstack before building constant array decl.
Thu Jan  6 16:31:28 2000  Anthony Green  <green@cygnus.com>

        * expr.c (java_lang_expand_expr): Switch to permanent obstack
        before building constant array decl.

From-SVN: r31283
2000-01-07 15:07:52 -08:00
Alexandre Petit-Bianco
6b924cc558 re GNATS gcj/122 (SP mismatch error from certain code constructs)
Thu Jan  6 00:54:10 2000  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * jcf-write.c (generate_byecode_conditional): Fixed indentation in
        method invocation and typo in conditional expression.
        (generate_bytecode_insns): COND_EXPR can be part of a binop. Issue
        the appropriate NOTE_POP.
        * parse.y (patch_binop): Shift value mask to feature the right
        type.

(This is a fix for the PR #122:
 http://sourceware.cygnus.com/ml/java-prs/2000-q1/msg00000.html)

From-SVN: r31277
2000-01-07 12:28:11 -08:00
Alexandre Petit-Bianco
ee07f4f4b1 Makefile.in (LIBDEPS): Added gcc's errors.o
Fri Dec 24 00:25:29 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* Makefile.in (LIBDEPS): Added gcc's errors.o
	(../jcf-dump$(exeext):): Link with gcc's errors.o
	(../gcjh$(exeext):): Likewise.
	* expr.c (expand_java_NEW): Layout the entire target type instead of
 	laying out its methods only.
	(lookup_field): Layout the class after having loaded it.
	* java-tree.h (java_debug_context): Declared.
	* jcf-io.c (toplev.h): Included.
	(find_class): Removed assignment to jcf's outofsynch
 	field. Force source file to be read if newer than its matching
 	class file. Tweaked debug messages.
	* jcf-parse.c (jcf_out_of_synch): Deleted.
	(read_class): Call to jcf_out_of_synch removed.
	* jcf.h (typedef struct JCF): Field `outofsynch' deleted.
	(jcf_out_of_synch): Prototype deleted.
	* parse.h (struct parser_ctxt): `minus_seen', `java_error_flag',
 	`deprecated' and `class_err': integer turned into bit fields.
	New bit fields `saved_data_ctx' and `saved_data'. Fixed comments.
	* parse.y (package_list): New global.
	(package_declaration:): Record newly parsed package name.
	(extra_ctxp_pushed_p): Static global deleted.
	(java_parser_context_save_global): Create buffer context for the
 	purpose of saving globals, if necessary.
	(java_parser_context_restore_global): Pop context pushed for the
 	purpose of saving globals, if necessary.
	(java_debug_context_do): New prototype and function.
	(java_debug_context): Likewise.
	(do_resolve_class): Use already parsed package names to qualify
 	and lookup class candidate.
	(java_pre_expand_clinit): Removed unnecessary local variable.

From-SVN: r31261
2000-01-06 14:06:22 -08:00
Kaveh R. Ghazi
c63b98cdad class.c (assume_compiled, [...]): Add static prototype.
* class.c (assume_compiled, assume_compiled_node): Add static
	prototype.
	(add_assume_compiled): Use xmalloc/xstrdup, not malloc/strdup.

	* jcf-dump.c (ARRAY_NEW_NUM): Cast long to int in switch.

	* jvgenmain.c (usage): Add static prototype with ATTRIBUTE_NORETURN.

	* parse.h (OBSOLETE_MODIFIER_WARNING): Rename parameter `modifier'
	to `__modifier' to avoid stringifying it.

	* parse.y (verify_constructor_circularity): Don't call a variadic
	function with a non-literal format string.
	(java_check_abstract_methods): Move unreachable code inside
	`continue' statement.
	(lookup_method_invoke): Call xstrdup, not strdup.

	* expr.c (expand_java_field_op): Avoid the use of ANSI string
	concatenation.

	* jcf-parse.c (yyparse): Likewise.

	* jv-scan.c (main): Likewise.

From-SVN: r31148
1999-12-31 03:30:22 +00:00
Alexandre Petit-Bianco
6bafd8b6e9 expr.c (expand_invoke): Layout the loaded class before attempting to use it.
Thu Dec 16 00:09:45 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* expr.c (expand_invoke): Layout the loaded class before
 	attempting to use it.
	(expand_java_field_op): Allow final field assignments to take
 	place in $finit$.
	* typeck.c (convert): Return error_mark_node if expr is null.

From-SVN: r31147
1999-12-30 19:06:55 -08:00
Kaveh R. Ghazi
781b0558cf parse.h (ABSTRACT_CHECK, [...]): Avoid the use of ANSI string concatenation.
* parse.h (ABSTRACT_CHECK, JCONSTRUCTOR_CHECK,
	ERROR_CANT_CONVERT_TO_BOOLEAN, ERROR_CANT_CONVERT_TO_NUMERIC,
	ERROR_CAST_NEEDED_TO_INTEGRAL): Avoid the use of ANSI string
	concatenation.

	* parse.y (synchronized, variable_redefinition_error,
	check_class_interface_creation, create_interface, create_class,
	method_header, finish_method_declaration,
	check_modifiers_consistency, method_declarator,
	complete_class_report_errors, check_abstract_method_definitions,
	java_check_regular_methods, check_throws_clauses,
	java_check_abstract_methods, read_import_dir,
	check_pkg_class_access, declare_local_variables, fix_constructors,
	cut_identifier_in_qualified, resolve_expression_name,
	resolve_qualified_expression_name, patch_method_invocation,
	java_complete_lhs, patch_assignment, try_builtin_assignconv,
	patch_binop, patch_array_ref, patch_newarray, build_labeled_block,
	patch_exit_expr, patch_exit_expr, patch_switch_statement,
	patch_try_statement, patch_synchronized_statement,
	patch_throw_statement, check_thrown_exceptions,
	patch_conditional_expr): Likewise.

From-SVN: r31146
1999-12-31 02:41:24 +00:00
Alexandre Petit-Bianco
e920ebc931 class.c (class_depth): Return -1 if the class doesn't load properly.
1999-12-14  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * class.c (class_depth): Return -1 if the class doesn't load
        properly.
        * expr.c (can_widen_reference_to): Check for errors during depth
        computation and return 0 accordingly.
        * jcf-parse.c (parse_source_file): Call java_fix_constructors to
        create default constructors and add an other error check.
        * parse.h (java_fix_constructors): Prototyped.
        * parse.y (java_pre_expand_clinit): Likewise.
        (build_super_invocation): Re-prototyped to feature one argument.
        (java_check_circular_reference): Directly use `current'.
        (java_fix_constructors): New function.
        (java_check_regular_methods): Don't create default constructors
        here, but abort if none were found.
        (java_complete_expand_methods): Pre-process <clinit> calling
        java_pre_expand_clinit.
        (java_pre_expand_clinit): New function.
        (fix_constructors): build_super_invocation invoked with the
        current method declaration as an argument.
        (build_super_invocation): Use the context of the processed method
        decl argument instead of current_class.
        * typeck.c (lookup_java_method): Take WFLs in method names into
        account.

From-SVN: r31144
1999-12-30 14:36:25 -08:00
Tom Tromey
6f19291ada re GNATS gcj/119 (gcjh needs to output space before leading "::" with JArray's)
* gjavah.c (decode_signature_piece): Print "::" in JArray<>.  This
	fixes PR gcj/119.
	(process_file): Use `\n\' at end of each line in string.

From-SVN: r30997
1999-12-17 20:25:59 +00:00
Per Bothner
cf69bfbf38 re GNATS gcj/110 (don't exclude private methods from method table when optimizing)
Tue Dec 14 14:20:16 1999  Per Bothner  <per@bothner.com>

	* class.c (make_class_data): flag_keep_inline_functions to keep
	private methods in the method array.

(This is a fix to the Java PR #110:
  http://sourceware.cygnus.com/ml/java-prs/1999-q4/msg00179.html)

From-SVN: r30930
1999-12-14 14:25:37 -08:00
Alexandre Petit-Bianco
3a1760acf0 re GNATS gcj/79 (Problem creating static arrays)
Fri Dec 10 21:53:45 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * parse.y (java_complete_lhs): Force convertion of array
        dimensions to int_type_node, that's what runtime's ABI expects.

(This patch is a fix for the PR #79:
 http://sourceware.cygnus.com/ml/java-prs/1999-q4/msg00069.html)

From-SVN: r30881
1999-12-12 17:50:55 -08:00
Anthony Green
38b58895a4 check-init.c (check_init): Take into account both types of `throw's when checking for uninitialized variables.
1999-12-15  Anthony Green  <green@cygnus.com>

	* check-init.c (check_init): Take into account both types of
        `throw's when checking for uninitialized variables.

From-SVN: r30879
1999-12-12 23:19:04 +00:00
Alexandre Petit-Bianco
6a50bd919b parse.h (EXPR_WFL_QUALIFICATION): Temporary uses the third operand of a WFL...
Fri Dec 10 16:13:48 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* parse.h (EXPR_WFL_QUALIFICATION): Temporary uses the third
 	operand of a WFL, until the Java front-end gets fixed with regard
 	to Mark Mitchell's gcc/tree.h patch (1999-12-04.)

From-SVN: r30878
1999-12-12 11:54:35 -08:00
Andrew Haley
8bbb23b7ac parse.h (BUILD_THROW): Add support for sjlj-exceptions.
1999-11-17  Andrew Haley  <aph@cygnus.com>

	* parse.h (BUILD_THROW): Add support for sjlj-exceptions.
	decl.c (init_decl_processing): Add _Jv_Sjlj_Throw.
	expr.c (build_java_athrow): Add support for sjlj-exceptions.
	java-tree.h: Ditto.
	jcf-write.c: Ditto.

From-SVN: r30859
1999-12-10 16:06:23 +00:00
Anthony Green
1684f87473 > * decl.c (init_decl_processing): Mark throw_node as a noreturn > function with side effects.
>     * decl.c (init_decl_processing): Mark throw_node as a noreturn
  >     function with side effects.
  >     (init_decl_processing): Mark all memory allocating DECLs with
  >     DECL_IS_MALLOC.

From-SVN: r30845
1999-12-09 12:32:48 +00:00
Alexandre Petit-Bianco
de1f429d34 [multiple changes]
Tue Nov 30 12:36:15 1999  Anthony Green  <green@cygnus.com>

        * verify.c (verify_jvm_instructions): Create new return label
        chain if non existant (don't rely on the verified state of the jsr
        target.)

Tue Nov 23 17:29:40 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * verify.c (merge_type_state): Non verified subroutines being
        considered more than once to trigger passive type merge.

From-SVN: r30811
1999-12-06 11:56:58 -08:00
Alexandre Petit-Bianco
1ba305b54c jcf-parse.c (saw_java_source): Global variable removed.
Wed Nov 24 17:33:26 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * jcf-parse.c (saw_java_source): Global variable removed.
        (read_class): Don't use `saw_java_source'. Added extra braces.
        (yyparse): Code setting `saw_java_source' removed.

From-SVN: r30809
1999-12-06 11:49:06 -08:00
Alexandre Petit-Bianco
0974e9fec8 except.c (expand_end_java_handler): Call expand_resume_after_catch and end_catch_handler.
Wed Dec  1 04:25:06 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * except.c (expand_end_java_handler): Call
        expand_resume_after_catch and end_catch_handler.

From-SVN: r30807
1999-12-06 11:37:30 -08:00
Alexandre Petit-Bianco
afc390b1ad jcf-write.c (generate_byecode_insns): Fixed indentation for COMPOUND_EXPR and FIX_TRUNC_EXPR cases.
Tue Nov 30 12:28:34 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * jcf-write.c (generate_byecode_insns): Fixed indentation for
        COMPOUND_EXPR and FIX_TRUNC_EXPR cases.

        * parse.y (patch_assignment): Removed bogus final class test on
        lhs when checking on whether to emit an ArrayStoreException runtime
        check.
        * expr.c (expand_java_arraystore): Likewise.

From-SVN: r30806
1999-12-06 11:31:25 -08:00
Jan Hubicka
eb69a68672 Undo the last change I've checked in by accident.
From-SVN: r30742
1999-12-01 17:27:17 +00:00