Commit Graph

312 Commits

Author SHA1 Message Date
Alexandre Petit-Bianco
af8b342afe [multiple changes]
Fri May 14 12:31:08 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* xref.c (xref_set_current_fp): New function, defined.
	* xref.h (xref_set_current_fp): New function, prototyped.
Fri May 14 11:57:54 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* check-init.c (check_init): Take into account that
 	LABELED_BLOCK_STMT can be empty.

From-SVN: r26935
1999-05-14 06:44:11 -07:00
Alexandre Petit-Bianco
1fb89a4d59 parse.y (java_check_regular_methods): Warning check on not overriding methods with default access in other packages...
Thu May 13 18:30:48 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* parse.y (java_check_regular_methods): Warning check on not
 	overriding methods with default access in other packages does not
 	apply to `<clinit>'.
	(java_complete_lhs): If block body is an empty_stmt_node, replace
 	it by NULL_TREE. This avoid gcc generating an irrelevant warning.

From-SVN: r26930
1999-05-13 12:01:19 -07:00
Alexandre Petit-Bianco
ce6e914727 check-init.c (check_init): Removed code accepting to see things falling through default:, when doing xrefs.
Thu May 13 13:23:38 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* check-init.c (check_init): Removed code accepting to see things
	falling through default:, when doing xrefs.
	* java-tree.h (do_not_fold): New global variable, declared.
	* parse.y (do_not_fold): New global variable, defined.
	(java_complete_expand_method): Set `do_not_fold' to the value of
 	`flag_emit_xref'. When doing xrefs: copy the thrown exceptions,
 	and reinstall them after them have been purged; do not check for
 	initializations; do not issue missing return errors.
	(java_complete_lhs): Do not attempt to patch INSTANCEOF_EXPR nodes
 	when doing xrefs.
	(patch_binop): Skip the fold part when doing xrefs.
	(build_string_concatenation): Skip the concatenation part when
 	doing xrefs.
	(patch_synchronized_statement): Do not generate a try-finally when
 	doing xrefs.
	(patch_throw_statement): When doing xrefs, do not call BUILD_THROW
 	and keep the location where the throw was seen.
	* typeck.c (convert): When `do_not_fold' is set, do not attempt
 	any treatment on the converted node an simply return a NOP_EXPR of
 	the targeted type.
	* xref.c (xref_get_data): New function, defined.
	* xref.h (xref_get_data): New function, declared.
	(XREF_GET_DATA): Use xref_get_data.

From-SVN: r26926
1999-05-13 07:33:37 -07:00
Kaveh R. Ghazi
1b01250dd0 gjavah.c (print_include): Cast the result of `strlen' to int when comparing against a signed value.
* gjavah.c (print_include): Cast the result of `strlen' to int
        when comparing against a signed value.
        (add_namelet): Likewise.

From-SVN: r26924
1999-05-13 12:05:02 +00:00
Kaveh R. Ghazi
b4b63e32e6 expr.c (expand_invoke): Mark parameter `nargs' with ATTRIBUTE_UNUSED.
* expr.c (expand_invoke): Mark parameter `nargs' with
        ATTRIBUTE_UNUSED.
        (PRE_LOOKUP_SWITCH): Likewise for variable `match'.
        * jcf-io.c (jcf_unexpected_eof): Mark parameter `count' with
        ATTRIBUTE_UNUSED.
        * jcf-reader.c (get_attribute): Cast a value to long
        when comparing against a signed expression.  Likewise.

From-SVN: r26907
1999-05-12 17:04:30 +00:00
Kaveh R. Ghazi
34ba56fa81 lex.h: Never define HOST_WIDE_INT, HOST_BITS_PER_WIDE_INT or HOST_BITS_PER_CHAR.
* lex.h: Never define HOST_WIDE_INT, HOST_BITS_PER_WIDE_INT or
        HOST_BITS_PER_CHAR.

From-SVN: r26906
1999-05-12 16:52:35 +00:00
Andrew Haley
138657ecb0 parse.y (source_end_java_method): If the current method contains any exception handlers...
1999-05-11  Andrew Haley  <aph@cygnus.com>
        * parse.y (source_end_java_method): If the current method contains
        any exception handlers, force asynchronous_exceptions: this is
        necessary because signal handlers in libjava may throw exceptions.
        * decl.c (end_java_method): Ditto.

From-SVN: r26884
1999-05-11 12:09:13 +00:00
Tom Tromey
6a09296d7a Make-lang.in (jvspec.o): Don't define WITH_THREAD_x or WITH_GC_x flags.
* Make-lang.in (jvspec.o): Don't define WITH_THREAD_x or WITH_GC_x
	flags.
	* jvspec.c (THREAD_NAME): Removed.
	(GC_NAME): Likewise.
	(MATHLIB): Likewise.
	(WITHLIBC): Likewise.
	(GCLIB): Likewise.
	(THREADLIB): Likewise.
	(MATH_LIBRARY): Likewise.
	(lang_specific_driver): Don't add `-l' options to command line.
	Instead, add a single --specs option.  Recognize `-L' options and
	use them to search for spec file.
	(find_spec_file): New function.
	(SPEC_FILE): New define.

From-SVN: r26883
1999-05-11 12:00:35 +00:00
Dave Brolley
b8b8bc0348 lang-options.h: -MD, -MMD, -M and -MM not needed here for cpplib-enabled build.
Tue May 11 11:46:36 1999  Dave Brolley  <brolley@cygnus.com>
	* lang-options.h: -MD, -MMD, -M and -MM not needed here for
	cpplib-enabled build.

From-SVN: r26882
1999-05-11 04:50:13 -04:00
Jeff Law
4e9dd50661 Fix typo. redudant -> redundant
From-SVN: r26809
1999-05-06 15:20:00 -06:00
Per Bothner
fe34cca7a5 Fix thinko.
From-SVN: r26799
1999-05-05 17:33:11 -07:00
Per Bothner
cd9643f75b class.c (make_field_value): DECL_INITIAL may be a string literal...
d
	* class.c (make_field_value):  DECL_INITIAL may be a string literal;
	temporarily zero it while calling rest_of_decl_compilation.
	* java-tree.h (string_ptr_type_node):  Add declaration.
	* decl.c:  Define and initialize string_ptr_type_node.
	* parse.y (patch_string_cst):  Use string_ptr_type_node.
	* parse.h (LOOP_HAS_LABEL_P, LOOP_HAS_LABEL_SKIP_P):  Removed.
	* parse.y (for_statement):  Now unconditionally exit_block.
	(finish_labeled_statement):  No longer exit_block if for-loop.
	(patch_loop_statement):  Check harder if the loop is already labeled.
	* parse.y (patch_initialized_static_field):  Removed function.
	(maybe_generate_clinit):  Removed special handling for interfaces.
	(java_complete_expand_methods):  Do a preliminary java_complete_tree
	on <clinit> to determine if it can be removed.
	(java_complete_expand_method):  Remove special handling for <clinit>.
	(java_complete_lhs):  For BLOCK and EXPR_WITH_FILE_LOCATION
	optimize if we get back empty_stmt_node.
	For MODIFY_EXPR, re-do checking of static initializers.
	(fold_constant_for_init):  Don't return immediate if VAR_DECL.
	For VAR_DECL, pass correct context.

From-SVN: r26790
1999-05-05 14:10:07 -07:00
Per Bothner
c14cff58e5 class.c (make_field_value): DECL_INITIAL may be a string literal...
* class.c (make_field_value):  DECL_INITIAL may be a string literal;
	temporarily zero it while calling rest_of_decl_compilation.
	* java-tree.h (string_ptr_type_node):  Add declaration.
	* decl.c:  Define and initialize string_ptr_type_node.
	* parse.y (patch_string_cst):  Use string_ptr_type_node.
	* parse.h (LOOP_HAS_LABEL_P, LOOP_HAS_LABEL_SKIP_P):  Removed.
	* parse.y (for_statement):  Now unconditionally exit_block.
	(finish_labeled_statement):  No longer exit_block if for-loop.
	(patch_loop_statement):  Check harder if the loop is already labeled.
	* parse.y (patch_initialized_static_field):  Removed function.
	(maybe_generate_clinit):  Removed special handling for interfaces.
	(java_complete_expand_methods):  Do a preliminary java_complete_tree
	on <clinit> to determine if it can be removed.
	(java_complete_expand_method):  Remove special handling for <clinit>.
	(java_complete_lhs):  For BLOCK and EXPR_WITH_FILE_LOCATION
	optimize if we get back empty_stmt_node.
	For MODIFY_EXPR, re-do checking of static initializers.
	(fold_constant_for_init):  Don't return immediate if VAR_DECL.
	For VAR_DECL, pass correct context.

From-SVN: r26789
1999-05-05 14:09:55 -07:00
Per Bothner
10b905f1ea verify.c (verify_jvm_instructions): Better error messages.
�
	* verify.c (verify_jvm_instructions):  Better error messages.

From-SVN: r26788
1999-05-05 14:09:08 -07:00
Tom Tromey
51d2ffa1a2 parse-scan.y (interface_declaration): Call report_class_declaration for interfaces.
* parse-scan.y (interface_declaration): Call
	report_class_declaration for interfaces.

From-SVN: r26761
1999-05-03 17:04:54 +00:00
Tom Tromey
a7f0ef91f6 parse-scan.y (interface_declaration): Call report_class_declaration for interfaces.
* parse-scan.y (interface_declaration): Call
	report_class_declaration for interfaces.

From-SVN: r26760
1999-05-03 16:59:16 +00:00
Alexandre Petit-Bianco
7f10c2e2fc check-init.c (check_init): Exclude a case of error when doing xrefs.
Fri Apr 30 17:54:40 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* check-init.c (check_init): Exclude a case of error when doing
 	xrefs.
	* class.c (layout_class_method): Don't generate the error message
 	twice when compiling from source.
	* lang-options.h: Added `-Wredundant-modifers' and
	`-Wunusupported-jdk11' flags and help text.
	* lang.c (lang_decode_option): Added support for
 	`-Wunsupported-jdk11' and `-Wredundant-modifiers'.
	flag_static_local_jdk11 and flag_redundant set accordingly.
	* lex.c (java_lex): Call BUILD_OPERATOR on CCB_TK.
	* parse.h (EXPR_WFL_ADD_COL): New macro.
	(DECL_END_SOURCE_LINE): Likewise.
	(DECL_INHERITED_SOURCE_LINE): Likewise.
	* parse.y (static_ref_err): New function, prototyped.
	(CCB_TK): Now tagged <operator>.
	(class_body:): Remember the location of the closing '}' of a class
 	definition when doing xrefs.
	(block:): Likewise.
	(block_end:): Likewise.
	(create_class): Remember the location of the inherited class
 	identifier when doing xrefs.
	(register_fields): Added test on first operand of `init' before
 	testing it TREE_CODE.
	(method_header): Store the location of the class identifier in the
 	class decl when doing xrefs.
	(finish_method_declaration): Don't combine first/last method line
 	when doing xref.
	(java_check_regular_methods): Warning check on not overriding
 	methods with default access on other packages move before check on
 	static methods. Initialization of `aflags' also moved up.
	(resolve_expression_name): Call static_ref_err to report the error.
	(static_ref_err): New function, implemented.
	(resolve_field_access): Returned simplified static field access
 	when doing xrefs.
	(resolve_qualified_expression_name): Check for illegal use of
 	static fields in a non static context. Call static_ref_err to
 	report error in various places.
	(java_complete_tree): To not fold initialized static fields when
 	doing xrefs.
	(java_complete_lhs): Likewise.

From-SVN: r26758
1999-05-03 09:45:18 -07:00
Zack Weinberg
b4c92efcde Makefile.in: Remove -v from bison command lines.
1999-04-30 20:54 -0400  Zack Weinberg  <zack@rabi.columbia.edu>
	* Makefile.in: Remove -v from bison command lines.

From-SVN: r26714
1999-04-30 17:57:22 +00:00
Alexandre Oliva
ceff9b1445 Fixed some old ChangeLog entries I wrote before becoming aware of the GNU
coding standards.

From-SVN: r26679
1999-04-27 13:27:29 +00:00
Anthony Green
d2e0d40a13 expr.c (generate_name): Use ASM_GENERATE_INTERNAL_LABEL to create internal labels.
* expr.c (generate_name): Use ASM_GENERATE_INTERNAL_LABEL to
	create internal labels.
	(lookup_label): Ditto.

From-SVN: r26672
1999-04-27 05:18:11 +00:00
Alexandre Petit-Bianco
7f1d48663e class.c (layout_class_method): Generate <clinit>'s rtl for interfaces.
Sat Apr 24 16:50:19 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* class.c (layout_class_method): Generate <clinit>'s rtl for
 	interfaces.
	* decl.c (complete_start_java_method): Don't call _Jv_InitClass
 	for interfaces' <clinit>.
	* expr.c (lookup_field): Search for fields in interfaces.
	(expand_invoke): Fixed indentation.
	(expand_java_field_op): Likewise. Use IS_CLINIT.
	* parse.h (JPRIMITIVE_TYPE_OR_VOID_P): Macro removed.
	(IS_CLINIT): New macro.
	* parse.y (type_declaration:): Call maybe_generate_clinit after an
 	interface was parsed.
	(maybe_generate_clinit): Don't generate if the current class is an
 	interface with only fields of primitive types.
	(reset_method_name): Use IS_CLINIT.
	(java_complete_expand_method): Expand <clinit> when it exists for
 	interfaces. Use IS_CLINIT.
	(resolve_expression_name): Use DECL_CONTEXT instead of
 	current_class to build static field references.
	(java_complete_lhs): Use IS__CLINIT. Don't use SAVE_EXPR on
 	ARRAY_REF when doing xreferencing.
	(check_final_assignment): Fixed typo in leading comment. Use
 	IS_CLINIT.
	(patch_array_ref): Don't fully expand array references when
 	xreferencing.
	(patch_return): Use IS_CLINIT.
	(patch_throw_statement): Likewise.

From-SVN: r26661
1999-04-26 12:09:37 -07:00
Tom Tromey
c9eb638ec7 * Make-lang.in (JAVA_SRCS): Added check-init.c.
From-SVN: r26585
1999-04-22 16:19:35 +00:00
Alexandre Petit-Bianco
5423609c57 decl.c (predef_filenames, [...]): New globals
Wed Apr 21 11:13:36 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* decl.c (predef_filenames, predef_filenames_size): New globals
	(init_decl_processing): predef_filenames and predef_filenames_size
 	initialized.
	* java-tree.h (predef_filenames, predef_filenames_size): Declared
 	extern.
	* jcf-parse.c (predefined_filename_p): New function.
	(yyparse): Check that files on the command line are specified only
 	once and issue a warning otherwise.
	* parse.h (JPRIMITIVE_TYPE_OR_VOID_P): New macro.
	* parse.y (source_end_java_method): Nullify NOP method bodies, to
 	avoid a gcc warning with -W -Wall turned on.
	(java_expand_classes): Abort if errors were encountered.
	(java_complete_lhs): If the cross reference flag is set, wrap
 	field DECL node around a WFL when resolving expression name.

From-SVN: r26578
1999-04-21 06:49:49 -07:00
Alexandre Petit-Bianco
e8fc739639 lang.c (lang_decode_option): Fixed returned value when parsing -fxref=...' and -Wall'.
Mon Apr 19 14:44:48 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* lang.c (lang_decode_option): Fixed returned value when parsing
 	`-fxref=...' and `-Wall'.
	* parse.y (source_end_java_method): Do not generate code when
 	flag_emit_xref is set.
	(resolve_expression_name): Do not build static field access when
 	flag_emit_xref is set.
	(resolve_field_access): No special treatement on `length' when
 	flag_emit_xref is set. Do not build qualified static field access
 	when flag_emit_xref is set.
	(patch_invoke): Keep the method DECL as operand 0 of the CALL_EXPR
 	when flag_emit_xref is set.
	(patch_assignment): Do not generate array store runtime check when
 	flag_emit_xref is set.
	* xref.c (xref_flag_value): Fixed function declaration
 	indentation.
	(xset_set_data): New function.
	* xref.h (xref_set_data): Added prototype for new function.
	(typedef struct xref_flag_table): New field data.
	(XREF_GET_DATA): New macro.

From-SVN: r26550
1999-04-19 08:45:57 -07:00
Tom Tromey
a3f406ce4c xref.h (enum): Removed trailing comma.
* xref.h (enum): Removed trailing comma.
	* parse.y (resolve_qualified_expression_name): Added missing
	`break'.

From-SVN: r26546
1999-04-19 10:20:27 +00:00
Anthony Green
08967681af gjavah.c: New prototypes for java_float_finite and java_double_finite.
Thu Apr 15 13:08:03 1999  Anthony Green  <green@cygnus.com>
	* gjavah.c: New prototypes for java_float_finite and
	java_double_finite.

From-SVN: r26474
1999-04-15 13:14:30 +00:00
Alexandre Petit-Bianco
b3edebcf49 parse.y (patch_unaryop): Fix ++ operator check on array references.
Mon Apr 12 18:27:32 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* parse.y (patch_unaryop): Fix ++ operator check on array
 	references.

From-SVN: r26382
1999-04-12 11:32:22 -07:00
Alexandre Petit-Bianco
2622b94785 parse.y (patch_assignment): Added ArrayStoreException runtime check.
Tue Apr  6 15:15:51 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
        * parse.y (patch_assignment): Added ArrayStoreException runtime
        check.

From-SVN: r26318
1999-04-09 09:26:33 -07:00
Jeffrey A Law
0bb07950af Makefile.in (TREE_H): Add tree-check.h.
* Makefile.in (TREE_H): Add tree-check.h.
        (RTL_H): Add genrtl.h.

From-SVN: r26228
1999-04-06 16:22:07 -06:00
Per Bothner
ab45646c4e expr.c (pop_type_0): New function.
�
	* expr.c (pop_type_0):  New function.
	(pop_type):  Use pop_type_0.
	* java-tree.h (pop_type_0):  New declaration.
	* verify.c (verify_jvm_instructions):  Check return instructions.

From-SVN: r26218
1999-04-06 07:28:39 -07:00
Per Bothner
ddcd8199a8 expr.c (pop_type_0): New function.
�
	* expr.c (pop_type_0):  New function.
	(pop_type):  Use pop_type_0.
	* java-tree.h (pop_type_0):  New declaration.
	* verify.c (verify_jvm_instructions):  Check return instructions.

From-SVN: r26217
1999-04-06 07:28:37 -07:00
Per Bothner
b399dcd2cc parse.y (patch_binop): Don't fold if non-constant and emiting class files.
8
	* parse.y (patch_binop):  Don't fold if non-constant and emiting
	class files.

From-SVN: r26216
1999-04-06 07:27:22 -07:00
Per Bothner
7c3f7c03af parse.y (patch_binop): Don't fold if non-constant and emiting class files.
�
	* parse.y (patch_binop):  Don't fold if non-constant and emiting
	class files.

From-SVN: r26215
1999-04-06 07:27:19 -07:00
Per Bothner
d1472141a5 parse.y (patch_binop): Don't fold if non-constant and emiting class files.
h
	* parse.y (patch_binop):  Don't fold if non-constant and emiting
	class files.

From-SVN: r26214
1999-04-06 07:27:17 -07:00
Kaveh R. Ghazi
4f65832d5c Makefile.in (gjavah.o): Depend on $(JAVA_TREE_H).
* Makefile.in (gjavah.o): Depend on $(JAVA_TREE_H).
        * gjavah.c: Include math.h earlier.  Include tree.h/java-tree.h.
        (main_jcf): Don't define.
        (process_file): Don't set `main_jcf'.
        * java-tree.h (main_jcf): Don't declare.
        * jcf-parse.c (main_jcf): Add static definition.
        * lang.c (main_jcf): Don't define.

From-SVN: r26204
1999-04-05 13:09:45 +00:00
Kaveh R. Ghazi
4504ead1db class.c (add_method_1): Cast the argument of `bzero' to PTR.
* class.c (add_method_1): Cast the argument of `bzero' to PTR.
        * decl.c (copy_lang_decl): Likewise for `bcopy'.
        * jcf-depend.c: Include "config.h", not <config.h>.
        * jcf-parse.c (jcf_figure_file_type): Cast the arguments of
        `bcopy' to PTR.
        * jcf-path.c: Include "config.h", not <config.h>.
        * lex.c: Don't include various system header files.
        (java_init_lex): Cast the argument of `bzero' to PTR
        * parse-scan.y (java_push_parser_context): Likewise.
        * parse.y (java_push_parser_context): Likewise.
        * xref.c: Don't include <stdio.h>.

From-SVN: r26203
1999-04-05 13:04:38 +00:00
Alexandre Petit-Bianco
d4370213f6 parse.y (struct parser_ctxt *ctxp): Now global.
Mon Apr  5 11:24:19 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* parse.y (struct parser_ctxt *ctxp): Now global.
	(declare_local_variables): Use WFL compound value for the
 	declaration source line value, when doing cross-referencing.

From-SVN: r26201
1999-04-05 05:00:08 -07:00
Tom Tromey
5877286edf gjavah.c (print_field_info): Allow constants of other types.
* gjavah.c (print_field_info): Allow constants of other types.
	(print_include): Generate include when new name is proper prefix
	of already printed name.
	(add_namelet): Likewise.
	(cxx_keyword_subst): New function.
	(print_method_info): Use it.
	(print_field_name): New function.
	(get_field_name): New function.
	(print_field_info): Use get_field_name and print_field_name.

From-SVN: r26085
1999-03-31 11:46:42 +00:00
Kaveh R. Ghazi
6a28cabc20 Makefile.in (keyword.h): Generate using gperf language 'C'...
* Makefile.in (keyword.h): Generate using gperf language 'C', not
        'KR-C', so gperf uses the `const' keyword on strings.
        * keyword.gperf (java_keyword): Const-ify a char*.

From-SVN: r26082
1999-03-31 08:05:08 +00:00
Alexandre Petit-Bianco
1504b2b439 [multiple changes]
Tue Mar 30 11:31:53 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* parse.y (patch_bc_statement): Fixed identation and a bogus
 	`printf' format.
Tue Mar 30 11:29:29 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* parse.y (patch_assignment): Allow static variables in other
 	classes to be assigned.

From-SVN: r26065
1999-03-30 03:35:27 -08:00
Kaveh R. Ghazi
152f94fc94 Warning fixes:
* class.c (maybe_add_interface): Remove unused variable
        `interface_binfo'.
        (make_class_data): Use = for assignment, not ==.  Likewise.
        (emit_register_classes): Remove unused variable `decl'.
        * lex.c: Fix comment so as not to contain an embedded `/*'.
        * verify.c (verify_jvm_instructions): Remove unused variable
        `self_type'.

From-SVN: r26046
1999-03-28 19:22:10 +00:00
Alexandre Petit-Bianco
f099f336d1 [multiple changes]
Sat Mar 27 15:13:21 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* parse.h (EXPR_WFL_GET_LINECOL): Set a line and column count
 	using a WFL compound value.
	* parse.y (xref.h): Include.
	(maybe_create_class_interface_decl): Set DECL_SOURCE_LINE to the
 	WFL compound value.
	(register_fields): Set WFL compound value to lineno if doing
 	xrefs.
	(java_complete_expand_method): Call expand_xref if flag_emit_xref
 	is set.
	* xref.c (system.h, jcf.h, parse.h, obstack.h): Include.
	* xref.h (expand_xref): Prototype renamed from xref_generate.
Sat Mar 27 14:16:32 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* parse.h (BLOCK_CHAIN_DECL): New use GET_CURRENT_BLOCK.
	(GET_CURRENT_BLOCK): New macro.
	* parse.y (current_static_block): New global variable.
	(method_body:): Define action.
	(complete_method_declaration): Set current_function_decl to NULL
 	when work on the current method is done.
	(declare_local_variables): Use GET_CURRENT_BLOCK.
	(java_method_add_stmt): Likewise.
	(java_complete_expand_method): Disable the use of `this' when
 	expanding <clinit>.
	(enter_a_block): If no current method exist, use
 	current_static_block to link static initializer blocks.
	(exit_block): Rewritten to use current_static_block when no current
 	method decl exists.
	(lookup_name_in_blocks): Use GET_CURRENT_BLOCK.
	(patch_return): Forbid the use of `return' in static initializers.
	(patch_throw_statement): Fixed indentation. Issue specific error
 	for uncaught thrown checked exception in static initializer
 	blocks. Removed FIXME.

From-SVN: r26018
1999-03-27 08:17:16 -08:00
Per Bothner
f1b0c0d8a3 parse.y (complete_loop_body): Rename to finish_loop_body.
�
	* parse.y (complete_loop_body):  Rename to finish_loop_body.
 	(complete_labeled_statement):  Rename to finish_labeled_statement.
	(complete_for_loop):  Rename to finish_for_loop.
	(complete_method_declaration):  Rename to finish_method_declaration.
	* java-tree.h (continue_identifier_node):  New global node.
	* decl.c:  Define and initialize continue_identifier_node.
	* parse.y (generate_labeled_block):  Remove - no longer needed.
	(build_loop_body):  Use continue_identifier_node for continue block.
	(finish_labeled_statement):  Also do pop_labeled_block actions.
	(java_complete_lhs):  POP_LOOP even if error.
	(build_labeled_block):  Special handling for continue_identifier_node.
	(patch_loop_statement):  Re-organize.
	(patch_bc_statement):  Re-write.

From-SVN: r26017
1999-03-27 08:05:29 -08:00
Per Bothner
e85ac860ae *** empty log message ***
From-SVN: r26016
1999-03-27 08:05:27 -08:00
Per Bothner
b635eb2fc0 parse.y (complete_loop_body): Rename to finish_loop_body.
d
	* parse.y (complete_loop_body):  Rename to finish_loop_body.
 	(complete_labeled_statement):  Rename to finish_labeled_statement.
	(complete_for_loop):  Rename to finish_for_loop.
	(complete_method_declaration):  Rename to finish_method_declaration.
	* java-tree.h (continue_identifier_node):  New global node.
	* decl.c:  Define and initialize continue_identifier_node.
	* parse.y (generate_labeled_block):  Remove - no longer needed.
	(build_loop_body):  Use continue_identifier_node for continue block.
	(finish_labeled_statement):  Also do pop_labeled_block actions.
	(java_complete_lhs):  POP_LOOP even if error.
	(build_labeled_block):  Special handling for continue_identifier_node.
	(patch_loop_statement):  Re-organize.
	(patch_bc_statement):  Re-write.

From-SVN: r26015
1999-03-27 08:05:24 -08:00
Zack Weinberg
08dc830e4f gcc.c: Compile unconditionally all code formerly dependent on #ifdef LANG_SPECIFIC_DRIVER.
* gcc.c: Compile unconditionally all code formerly dependent
	on #ifdef LANG_SPECIFIC_DRIVER.
	* gccspec.c: New file with stub lang_specific_driver,
	lang_specific_pre_link.
	* Makefile.in: Link gccspec.o into xgcc.  Add rule to compile
	gccspec.c.
	* cp/Make-lang.in: Remove all references to g++.o/g++.c.
	Link g++ from gcc.o.
	* f/Make-lang.in: Remove all references to g77.o/g77.c.
	Link g77 from gcc.o.
	* java/Make-lang.in: Remove all references to gcj.o/gcj.c.
	Link gcj from gcc.o.

From-SVN: r25989
1999-03-25 16:36:47 -07:00
Alexandre Petit-Bianco
de0b553f86 parse.y (find_applicable_accessible_methods_list): When dealing with interface...
Tue Mar 23 10:48:24 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* parse.y (find_applicable_accessible_methods_list): When dealing
 	with interface: ensure that a given interface or java.lang.Object
 	are searched only once.

From-SVN: r25925
1999-03-23 03:20:03 -08:00
Kaveh R. Ghazi
9ee9b55502 Warning fixes:
* gjavah.c (print_c_decl): Remove unused argument `flags'.
        * jcf-dump.c (print_access_flags): Add braces around if-else.
        * jvspec.c (lang_specific_driver): Wrap variable `len' in macro
        COMBINE_INPUTS.
        * lex.c (build_wfl_node): Add static prototype.
        * lex.h (build_wfl_node): Remove static prototype.
        * parse.y: Include lex.c early enough to declare everything needed.
        Ensure calls to `build_wfl_node' pass the proper arguments.
        (create_class): Remove unused variable `super_decl'.
        (get_printable_method_name): Initialize variable `name'.

From-SVN: r25921
1999-03-23 07:24:15 +00:00
Alexandre Petit-Bianco
8af456c81a Changelog: Fixed 1999-03-22 typos.
Mon Mar 22 20:14:26 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* Changelog: Fixed 1999-03-22 typos.
	* lang.c (lang_decode_option): Fixed typo in error string in the
 	XARG section.
(Grr, typos.)

From-SVN: r25908
1999-03-22 12:16:45 -08:00
Alexandre Petit-Bianco
235acd3518 Makefile.in: (JAVA_OBJS) Added entry xref.o.
1999-03-22  Alexandre Petit-Bianco  <apbianco@cygnus.com>
	* Makefile.in: (JAVA_OBJS) Added entry xref.o.
	(xref.o): New rule.
	* java-tree.h (flag_emit_xref): Declared extern.
	* lang.c: (xref.h): Included.
	(flag_emit_xref): New global variable.
	(lang_decode_option): Added support for -fxref.
	* xref.c: Created.
	* xref.h: Likewise.

From-SVN: r25907
1999-03-22 11:57:37 -08:00