Commit Graph

65 Commits

Author SHA1 Message Date
Kelley Cook
35222de242 * builtins.c, jcf.h, jvspec.c: Remove PARAMS macros.
From-SVN: r72107
2003-10-05 02:52:33 +00:00
Andreas Jaeger
8376cf3db9 treetree.c: Convert remaining K&R prototypes to ISO C90.
treelang:
	* treetree.c: Convert remaining K&R prototypes to ISO C90.
	* tree1.c: Likewise.
	* parse.y: Likewise.
	* tree-convert.c: Likewise.

java:

	* jvspec.c: Convert to ISO C90 prototypes.

From-SVN: r69881
2003-07-28 06:39:29 +02:00
Kaveh R. Ghazi
c68b0a8425 fixfixes.c [...]: Remove unnecessary casts.
gcc:
	* fixinc/fixfixes.c fixinc/fixincl.c fixinc/fixlib.c
	fixinc/server.c objc/objc-act.c: Remove unnecessary casts.

f:
	* com.c data.c expr.c fini.c g77spec.c global.c lab.c lex.c name.c
	sta.c stc.c std.c storag.c stt.c stw.c symbol.c target.c type.c:
	Remove unnecessary casts.

cp:
	* call.c class.c decl.c decl2.c g++spec.c lex.c parser.c pt.c rtti.c
	semantics.c typeck.c: Remove unnecessary casts.

java:
	* class.c java-tree.h jcf-write.c jvspec.c: Remove unnecessary
	casts.

treelang:
	* treetree.c: Remove unnecessary casts.

From-SVN: r69593
2003-07-19 16:09:51 +00:00
Tom Tromey
f751e9c281 jvspec.c (jvgenmain_spec): Added `*' after fassume-compiled and fno-assume-compiled.
* jvspec.c (jvgenmain_spec): Added `*' after fassume-compiled and
	fno-assume-compiled.

From-SVN: r67634
2003-06-08 19:02:17 +00:00
Steven Bosscher
f309ff0a12 Make-lang.in, [...]: Replace "GNU CC" with "GCC" in the copyright header.
* Make-lang.in, boehm.c, buffer.c,
	  buffer.h, builtins.c, class.c,
	  config-lang.in, constants.c,
	  convert.h, decl.c, except.c,
	  expr.c, java-except.h,
	  java-tree.h, javaop.def,
	  jcf-parse.c, jcf-write.c,
	  jv-scan.c, jvgenmain.c,
	  jvspec.c, keyword.gperf,
	  keyword.h, lang-options.h,
	  lang-specs.h, lang.c, lex.c,
	  lex.h, mangle.c, mangle_name.c,
	  parse-scan.y, parse.h, parse.y,
	  typeck.c, verify.c, xref.c,
	  xref.h: Replace "GNU CC" with
	  "GCC" in the copyright header.

	* check-init.c, gjavah.c, javaop.h,
	  jcf-depend.c, jcf-dump.c, jcf-io.c,
	  jcf-path.c, jcf-reader.c, jcf.h,
	  zextract.c, zipfile.h: These files are
	  "part of GCC". Also say "GCC" not "GNU CC".

From-SVN: r60747
2003-01-01 15:10:03 +00:00
Zack Weinberg
4977bab6ed Merge basic-improvements-branch to trunk
From-SVN: r60174
2002-12-16 18:23:00 +00:00
Jason Thorpe
f3226a9001 gcc.c (The Specs Language): Document spec functions.
* gcc.c (The Specs Language): Document spec functions.
(static_spec_functions, lookup_spec_function)
(eval_spec_function, handle_spec_function)
(if_exists_spec_function, alloc_args): New.
(execute): Abort if processing_spec_function is true.
(do_spec_1): Hand off spec to handle_spec_function if %:
is encountered.  If processing_spec_function is true,
end any pending argument when the end of the string is reached.
(main): Use alloc_args to allocate the initial argument vector.
* gcc.h (struct spec_function): New.
(lang_specific_spec_functions): New extern.

* config/netbsd-elf.h (STARTFILE_SPEC): Add if-exists(crti%O%s).
(ENDFILE_SPEC): Add if-exists(crtn%O%s).
* config/alpha/netbsd.h (ENDFILE_SPEC): Likewise.

* doc/invoke.texi: Document spec functions.

* cppspec.c (lang_specific_spec_functions): New.
* gccspec.c: Likewise.

* g++spec.c (lang_specific_spec_functions): New.

* g77spec.c (lang_specific_spec_functions): New.

* jvspec.c (lang_specific_spec_functions): New.

From-SVN: r59241
2002-11-19 04:37:50 +00:00
Jens-Michael Hoffmann
a92cb0c3d3 buffer.c: Remove unnecessary casts.
2002-11-14  Jens-Michael Hoffmann  <jensmh@gmx.de>

        * buffer.c: Remove unnecessary casts.
        * check-init.c: Likewise.
        * class.c: Likewise.
        * constants.c: Likewise.
        * decl.c: Likewise.
        * except.c: Likewise.
        * gjavah.c: Likewise.
        * jcf-io.c: Likewise.
        * jcf-parse.c: Likewise.
        * jcf-path.c: Likewise.
        * jvspec.c: Likewise.
        * lang.c: Likewise.
        * lex.c: Likewise.
        * verify.c: Likewise.

From-SVN: r59224
2002-11-18 15:46:34 +00:00
Anthony Green
acc59b855d Add -fno-assert flag.
From-SVN: r57649
2002-09-30 14:57:43 +00:00
Kazu Hirata
ee142fe7a8 ChangeLog: Follow spelling conventions.
* ChangeLog: Follow spelling conventions.
	* class.c: Likewise.
	* decl.c: Likewise.
	* expr.c: Likewise.
	* gjavah.c: Likewise.
	* java-tree.h: Likewise.
	* jcf-dump.c: Likewise.
	* jcf-parse.c: Likewise.
	* jvspec.c: Likewise.
	* lang.c: Likewise.
	* mangle.c: Likewise.
	* parse.y: Likewise.

From-SVN: r57378
2002-09-21 02:19:44 +00:00
Tom Tromey
3d3707c1d5 For PR java/6314:
* jvspec.c (lang_specific_driver): Use --resource, not -R.  Also
	recognize `-fcompile-resource='.
	* gcj.texi (Invoking gcj): Use --resource, not -R.  Expanded text
	a bit.

From-SVN: r52690
2002-04-23 22:58:09 +00:00
Anthony Green
9fef1fe3e4 Add --extdirs support.
From-SVN: r52227
2002-04-12 14:28:50 +00:00
Per Bothner
2a85660dc2 Make --CLASSPATH by a synonym for --classpath and -classpath.
Implement --bootclasspath.

From-SVN: r50247
2002-03-03 00:35:11 -08:00
Bryce McKinlay
022dcc4605 expr.c (java_array_data_offset): Removed function.
* expr.c (java_array_data_offset): Removed function.
	(JAVA_ARRAY_LENGTH_OFFSET): Removed macro.
	(build_java_array_length_access): Obtain "length" value using a
	COMPONENT_REF, instead of INDIRECT_REF and arithmetic.
	(build_java_arrayaccess): Correct comment. Access "data" using a
	COMPONENT_REF, and return an ARRAY_REF instead of an INDIRECT_REF.
	(build_java_arraystore_check): New function.
	(expand_java_arraystore): Use build_java_arraystore_check.
	* parse.y (patch_assignment): Simplify code to insert a store check
	when lvalue is an ARRAY_REF. Use build_java_arraystore_check.
	* check-init.c (check_init): Update to reflect that an array length
	access is now a COMPONENT_REF.
	* gcj.texi (Code Generation): Improve documentation of
	-fno-bounds-check. Add documentation for -fno-store-check.
	* java-tree.h (flag_store_check): Declare.
	(build_java_arraystore_check): Declare.
	* lang.c (flag_store_check): Initialize to 1.
	(lang_f_options): Add store-check option.
	* jvspec.c: Don't pass store-check option to jvgenmain.
	* lang-options.h: Add help string for -fno-store-check.

From-SVN: r50129
2002-02-28 11:40:29 +00:00
Tom Tromey
d2fb532900 re PR java/2369 (--main should check the following symbol)
Fix for PR java/2369:
	* jvspec.c (verify_class_name): New function.
	(lang_specific_driver): Call it.
	(JAVA_START_CHAR_P): New macro.
	(JAVA_PART_CHAR_P): Likewise.

From-SVN: r49981
2002-02-23 00:42:13 +00:00
Kaveh R. Ghazi
0b5826acc8 arc.c (arc_hard_regno_mode_ok): Const-ify.
* arc.c (arc_hard_regno_mode_ok): Const-ify.
	* arc.h (arc_hard_regno_mode_ok): Likewise.
	* i386.c (x86_64_reg_class_name): Make static.
	* m68k.c (regno_reg_class): Const-ify.
	* m68k.h (regno_reg_class): Likewise.
	* mcore.c (reg_class_from_letter): Likewise.
	* mcore.h (reg_class_from_letter): Likewise.
	* sh.c (reg_class_from_letter, ashiftrt_insns, shift_insns,
	ext_shift_insns, ext_shift_amounts): Likewise.
	* sh.h (reg_class_from_letter): Likewise.
	* sparc.c (hard_regno_mode_classes, hard_32bit_mode_classes,
	hard_64bit_mode_classes): Likewise.
	* sparc.h (hard_regno_mode_classes): Likewise.

	* gcc.c (modify_target): Make static.
	* gengenrtl.c (defs, formats): Likewise.
	* reload1.c (elim_table_1, init_elim_table): Const-ify.
	* tradcpp.c (directive, directive_table, handle_directive,
	skip_if_group, run_directive): Likewise.

cp:
	* decl2.c (lang_f_options): Const-ify.

f:
	* com.c (ffecom_gfrt_volatile_, ffecom_gfrt_complex_,
	ffecom_gfrt_const_, ffecom_gfrt_type_): Const-ify.

java:
	* Make-lang.in (keyword.h): Pass -C to gperf to const-ify
	the static arrays that are output.
	* jvspec.c (jvgenmain_spec): Make static.
	* keyword.gperf (struct java_keyword, java_keyword): Const-ify.
	* keyword.h: Regenerate.
	* lang.c (string_option, process_option_with_no, lang_f_options,
	lang_W_options): Const-ify.
	* lex.c (java_lex): Likewise.

From-SVN: r48290
2001-12-23 16:07:16 +00:00
Bryce McKinlay
861ef92859 java-tree.h (otable_methods, [...]): New field/global tree definitions.
gcc/java:

	* java-tree.h (otable_methods, otable_decl, otable_syms_decl,
	otable_type, otable_ptr_type, method_symbol_type,
	method_symbols_array_type, method_symbols_array_ptr_type): New
	field/global tree definitions.
	(flag_indirect_dispatch): New flag.
	* decl.c (java_init_decl_processing): Initialize new otable and
	otable_syms type nodes and decls. Add new field "index" to
	method_type_node.
	* class.c (build_method_symbols_entry): New function.
	(make_method_value): Set "index" to to method's vtable index for
	virtual methods when indirect-dispatch is not used.
	(make_class_data): For indirect-dispatch, dont emit the dtable_decl,
	and set vtable_method_count to -1. Set otable and otable_syms field
	if indirect-dispatch is used and there was something to put in them.
	(build_method_symbols_entry): New function.
	(emit_offset_symbol_table): New function.
	* expr.c (get_offset_table_index): New function.
	(build_invokevirtual): Build array reference to otable at the index
	returned by get_offset_table_index, and use the result as the vtable
	offset.
	(build_invokeinterface): Similar.
	* jcf-parse.c (yyparse): If indirect-dispatch, call
	emit_offset_symbol_table at the end of compilation, after all classes
	have been generated.
	* jvspec.c: Don't pass findirect-dispatch to jvgenmain.
	* lang.c (flag_indirect_dispatch): Define.
	(lang_f_options): Add indirect-dispatch flag.

libjava:

	* include/jvm.h (_Jv_VTable::idx_to_offset): New method.
	* java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): Call
	_Jv_MakeVTable and _Jv_LinkOffsetTable if needed.
	* java/lang/Class.h (_Jv_Method): Add "index" field.
	(_Jv_MethodSymbol): New struct type.
	(_Jv_LinkOffsetTable, _Jv_LayoutVTableMethods, _Jv_SetVTableEntries,
	_Jv_MakeVTable): Friends.
	(otable, otable_syms): New Class fields.
	* java/lang/natClass.cc (_Jv_LinkOffsetTable): New function.
	(isVirtualMethod): New static function.
	(_Jv_LayoutVTableMethods): New function.
	(_Jv_SetVTableEntries): New function.
	(_Jv_MakeVTable): New function.

From-SVN: r48038
2001-12-15 08:31:49 +00:00
Neil Booth
c725bd79e7 c-decl.c (grokdeclarator): Use ISO word.
* c-decl.c (grokdeclarator): Use ISO word.
	* cppinit.c: Remove leading capital from diagnostic messages, as
	per GNU coding standards.
	* diagnostic.c: Similarly.
	* emit-rtl.c: Similarly.
	* final.c: Similarly.
	* gcc.c: Similarly.
	* tradcpp.c: Similarly.
	* config/arm/arm.c: Similarly.
	* config/arm/arm.h: Similarly.
	* config/avr/avr.c: Similarly.
	* config/avr/avr.h: Similarly.
	* config/c4x/c4x.c: Similarly.
	* config/cris/cris.c: Similarly.
	* config/cris/cris.h: Similarly.
	* config/d30v/d30v.c: Similarly.
	* config/dsp16xx/dsp16xx.c: Similarly.
	* config/dsp16xx/dsp16xx.h: Similarly.
	* config/h8300/h8300.c: Similarly.
	* config/i386/i386.c: Similarly.
	* config/i386/xm-djgpp.h: Similarly.
	* config/i960/i960.h: Similarly.
	* config/m32r/m32r.c: Similarly.
	* config/m68hc11/m68hc11.c: Similarly.
	* config/m88k/m88k.c: Similarly.
	* config/m88k/m88k.h: Similarly.
	* config/mcore/mcore.c: Similarly.
	* config/mcore/mcore.h: Similarly.
	* config/mips/mips.c: Similarly.
	* config/mmix/mmix.c: Similarly.
	* config/pa/pa.c: Similarly.
	* config/rs6000/rs6000.c: Similarly.
	* config/rs6000/sysv4.h: Similarly.
	* config/s390/s390.c: Similarly.
	* config/sparc/sparc.c: Similarly.
	* config/v850/v850-c.c: Similarly.
	* config/v850/v850.c: Similarly.
ch:
	* actions.c: Remove leading capital from diagnostic messages, as
	per GNU coding standards.
	* decl.c: Similarly.
	* expr.c: Similarly.
	* inout.c: Similarly.
	* lang.c: Similarly.
	* loop.c: Similarly.
	* nloop.c: Similarly.
	* parse.c: Similarly.
	* satisfy.c: Similarly.
	* tasking.c: Similarly.
	* tree.c: Similarly.
	* typeck.c: Similarly.
cp:
	* typeck2.c: Remove leading capital from diagnostic messages, as
	per GNU coding standards.
f:
	* com.c: Remove leading capital from diagnostic messages, as
	per GNU coding standards.
	* g77spec.c: Similarly.
	* lex.c: Similarly.
java:
	* expr.c: Remove leading capital from diagnostic messages, as
	per GNU coding standards.
	* jcf-io.c: Similarly.
	* jcf-parse.c: Similarly.
	* jv-scan.c: Similarly.
	* jvspec.c: Similarly.
	* mangle.c: Similarly.

From-SVN: r47558
2001-12-03 19:15:19 +00:00
Rainer Orth
b856c15d7e re PR other/3968 (COLLECT_GCC_OPTIONS empty)
* gcc.c (set_collect_gcc_options): New function, split out from
	main.
	Ignore elided switches.
	(do_spec): Invoke before executing command.
	(do_spec_1): Likewise.
	Fixes PR other/3968.

	* gcc.c (set_input): Export.
	Move declaration ...
	gcc.h (set_input): ... here.

	java:
	* jvspec.c (jvgenmain_spec): Cannot use %umain, breaks
	ASM_FINAL_SPEC.
	(lang_specific_pre_link): Use set_input to set input_filename.
	Append `main' here.
	* jvgenmain.c (usage): Append literal `main' to CLASSNAME.
	(main): Fix definition.
	Strip `main' from classname.
	Fixes PR java/227.

From-SVN: r47385
2001-11-27 17:31:38 +00:00
Alexandre Petit-Bianco
0ef02b2d31 java-tree.h (compile_resource_file): Grouped with other prototypes.
2001-09-06  Alexandre Petit-Bianco  <apbianco@redhat.com>

	* java-tree.h (compile_resource_file): Grouped with other prototypes.
	* jvspec.c (lang_specific_driver): Removed unused local `ptr.'

(http://gcc.gnu.org/ml/gcc-patches/2001-09/msg00249.html )

From-SVN: r45475
2001-09-07 11:40:26 -07:00
Anthony Green
7be5b0e5a4 class.c (O_BINARY): Define if necessary.
* class.c (O_BINARY): Define if necessary.
        (registerResource_libfunc): Declare.
        (init_class_processing): Initilize registerResource_libfunc.
        (compile_resource_file): New function.
        * java-tree.h (resource_name): Declare.
        (compile_resource_file): Declare.
        * jcf-parse.c (yyparse): Handle compiling java resource files.
        * lang.c (java_decode_option): Handle -fcompile-resource option.
        * jvspec.c (lang_specific_driver): Handle -R flag for compiling
        resource files.
        * gcj.texi (Code Generation): Add documentation for -R flag.

From-SVN: r45448
2001-09-06 22:22:44 +00:00
David Edelsohn
6ba5747268 Revert Rainer Orth's Java and gcc.c patch.
From-SVN: r44834
2001-08-12 16:36:22 -04:00
Rainer Orth
578672a267 re PR java/227 (mips-tfile:internal error (when compiling java code))
* gcc.c (set_collect_gcc_options): New function, split out from
	main.
	Ignore elided switches.
	(do_spec_1): Invoke before executing command.
	(set_input): Export.
	Move declaration ...
	* gcc.h (set_input): ... here.
	* config/alpha/osf.h (ASM_FINAL_SPEC): Use %U.s to refer to input
	file.

	java:
	* jvspec.c (jvgenmain_spec): Cannot use %umain, breaks
	ASM_FINAL_SPEC.
	(lang_specific_pre_link): Use set_input to set input_filename.
	Append `main' here.
	* jvgenmain.c (usage): Append literal `main' to CLASSNAME.
	(main): Fix definition.
	Strip `main' from classname.
	Fixes PR java/227.

From-SVN: r44572
2001-08-02 12:26:00 +00:00
Tom Tromey
4b2dc1b2b6 jvspec.c (jvgenmain_spec): Remove -ffilelist-file from cc1 invocation.
* jvspec.c (jvgenmain_spec): Remove -ffilelist-file from cc1
	invocation.

From-SVN: r44000
2001-07-13 23:17:41 +00:00
Per Bothner
9d28960448 jvspec.c (lang_specific_pre_link): Re-arrange the linker command line so the jvgenmain-generated main program...
* jvspec.c (lang_specific_pre_link):  Re-arrange the linker
        command line so the jvgenmain-generated main program comes first.

From-SVN: r42270
2001-05-18 11:34:51 -07:00
Kaveh R. Ghazi
962584ea56 jcf-io.c (read_zip_member): Cast to long in comparison with signed value.
* jcf-io.c (read_zip_member): Cast to long in comparison with
	signed value.

	* jvspec.c (lang_specific_driver): Initialize variables.

	* mangle.c (find_compression_record_match): Likewise.

	* typeck.c (build_null_signature): Provide static prototype.  Mark
	parameter with ATTRIBUTE_UNUSED.

	* verify.c (verify_jvm_instructions): Initialize variable.

From-SVN: r41671
2001-04-29 11:24:37 +00:00
Kaveh R. Ghazi
d4c3ec2738 collect2.c (main): Use concat in lieu of xmalloc/sprintf.
* collect2.c (main): Use concat in lieu of xmalloc/sprintf.
	(write_c_file_stat): Likewise.

	* dbxout.c (dbxout_init): Likewise.

	* profile.c (output_func_start_profiler): Likewise.

cp:
	* xref.c (GNU_xref_file): Use concat in lieu of xmalloc/sprintf.

f:
	* com.c (ffecom_subscript_check_): Use concat in lieu of
	xmalloc/sprintf.

java:
	* jvspec.c (lang_specific_driver): Fix memory allocation
	deficit, by using concat in lieu of xmalloc/sprintf.

From-SVN: r41495
2001-04-23 00:36:28 +00:00
Andrew Haley
4ff17c6a1a gcj.texi (Configure-time Options): Add -fcheck-references.
2001-02-07  Andrew Haley  <aph@redhat.com>

        * gcj.texi (Configure-time Options): Add -fcheck-references.
        * expr.c (build_java_indirect_ref): New function.
        (build_java_array_length_access): Use build_java_indirect_ref to
        check for null references.
        (build_java_arrayaccess): Likewise.
        (build_get_class): Likewise.
        (build_field_ref): Likewise.
        (invoke_build_dtable): Likewise.
        (build_invokeinterface): Likewise.
        * lang.c (lang_f_options): Add flag_check_references.
        * jvspec.c (jvgenmain_spec): Add flag_check_references.
        * java-tree.h (flag_check_references): New variable.
        * lang.c (flag_check_references): Likewise.

From-SVN: r40780
2001-03-23 14:16:33 +00:00
Per Bothner
8b1edcee4a jvspec.c (lang_specific_driver): Check for .zip and .jar files.
* jvspec.c (lang_specific_driver):  Check for .zip and .jar files.
	Add constructed filelist-file at end, following -xjava.  Thus any .o
	and library files are not affected by the -xjava.  Also wrap
	explicut @FILE with -xjava and -xnone.

From-SVN: r40621
2001-03-19 08:41:59 -08:00
Per Bothner
7d32abcdd2 jvspec.c (lang_specific_driver): Fix -C handling.
* jvspec.c (lang_specific_driver):  Fix -C handling.
	Check -save-temps to see if temp @FILE should be deleted.
	Follow-up to/fix for February 16 patch.

From-SVN: r40530
2001-03-15 20:32:05 -08:00
Per Bothner
fea2d5da9c Handle compiling multiple input files at once, and @FILE syntax. See ChangeLog.
From-SVN: r40024
2001-02-23 19:28:39 -08:00
Bryce McKinlay
ca5b1ff89a Make-lang.in (jvspec.o): Add DRIVER_DEFINES to the list of macros used when compiling jvspec.c.
gcc/java:
        * Make-lang.in (jvspec.o): Add DRIVER_DEFINES to the list
        of macros used when compiling jvspec.c.
        * jvspec.c (lang_specific_driver): Link with the shared
        libgcc by default.

libjava:
        * libgcj.spec.in: Don't force static libgcc into the executable.
        * configure.in (FORCELIBGCCSPEC): Removed.

From-SVN: r39449
2001-02-05 05:46:16 +00:00
Tom Tromey
0adc3d8a92 * jvspec.c (jvgenmain_spec): Omit -fencoding from cc1 invocation.
From-SVN: r38874
2001-01-10 19:13:10 +00:00
Tom Tromey
316a06a103 jvspec.c (lang_specific_driver): Recognize -MF and -MT.
* jvspec.c (lang_specific_driver): Recognize -MF and -MT.
	* lang-specs.h: Added %{MA}, %{MF*}, %{MT*}.
	* lang-options.h: Added -MA, -MT, -MF..
	* lang.c (lang_decode_option): Recognize -MA, -MT, -MF.
	(DEPEND_TARGET_SET): New macro.
	(DEPEND_FILE_ALREADY_SET): Likewise.
	(init_parse): Handle new flags.
	* jcf.h (jcf_dependency_print_dummies): Declare.
	* Make-lang.in (s-java): Added mkdeps.o.
	* Makefile.in (BACKEND): Added mkdeps.o.
	(../gcjh$(exeext)): Added mkdeps.o.
	(../jcf-dump$(exeext)): Added mkdeps.o.
	* jcf-depend.c: Include mkdeps.h.
	(struct entry, dependencies, targets, MAX_OUTPUT_COLUMNS,
	add_entry): Removed.
	(jcf_dependency_reset): Rewrote.
	(dependencies): New global.
	(jcf_dependency_set_target): Rewrote.
	(jcf_dependency_add_target): Likewise.
	(jcf_dependency_add_file): Likewise.
	(munge): Removed.
	(print_ents): Removed.
	(jcf_dependency_write): Rewrote.
	(print_dummies): New global.
	(jcf_dependency_print_dummies): New function
	(jcf_dependency_write): Call deps_dummy_targets if required.

From-SVN: r36981
2000-10-20 21:19:29 +00:00
Tom Tromey
e0a0c416a0 jvspec.c (jvgenmain_spec): Added `-fdollars-in-identifiers'.
* jvspec.c (jvgenmain_spec): Added `-fdollars-in-identifiers'.
	* jvgenmain.c (class_mangling_prefix): Removed.
	(class_mangling_suffix): New global.
	(main): Use it.
	* gjavah.c (cxx_keyword_subst): Mangle C++ keywords by appending
	`$'.
	(print_method_info): Handle overrides for static and final
	methods.
	(process_file): Generate declaration for class object field.
	* class.c (cxx_keywords): New array.
	(utf8_cmp): New function.
	(cxx_keyword_p): New function.
	(layout_class_method): Mangle C++ keywords by appending `$'.
	(mangle_field): New function.
	(mangle_class_field): Use mangle_field.  Mangle class name as
	`class$'.
	(mangle_static_field): Use mangle_field.

From-SVN: r36738
2000-10-06 01:45:47 +00:00
Zack Weinberg
37620334d9 gcc.h (lang_specific_driver): Constify second argument.
* gcc.h (lang_specific_driver): Constify second argument.
	* gcc.c (translate_options, process_command, main): Likewise.
	Constify variables to match.  Cast second argument to
	pexecute.

	* cppspec.c, gccspec.c, g++spec.c, g77spec.c, jvspec.c: Adjust
	type of second argument to lang_specific_driver, and update
	code as necessary.

From-SVN: r35433
2000-08-02 20:21:27 +00:00
Tom Tromey
a843e0ced8 jvspec.c (jvgenmain_spec): Add %{<...}' construct for each Java-specific -f' option.
* jvspec.c (jvgenmain_spec): Add `%{<...}' construct for each
	Java-specific `-f' option.

From-SVN: r32757
2000-03-27 00:30:47 +00:00
Jeff Law
3852e8afcc Fix copyrights
From-SVN: r32182
2000-02-26 13:02:01 -07: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
Tom Tromey
7cf4196339 jvgenmain.c (usage): New function.
* jvgenmain.c (usage): New function.
	(main): Use it.  Also, handle `-D' options.
	* jvspec.c (lang_specific_driver): Recognize -D.
	(jvgenmain_spec): Added `%{D*}' to jvgenmain invocation.

From-SVN: r30019
1999-10-15 16:45:31 +00:00
Tom Tromey
8f4265869d * jvspec.c (jvgenmain_spec): Use %umain', not just %u'.
From-SVN: r29985
1999-10-14 20:55:21 +00:00
Tom Tromey
0cffaca32c jvspec.c (lang_specific_driver): Don't read spec file if -fsyntax-only given.
* jvspec.c (lang_specific_driver): Don't read spec file if
	-fsyntax-only given.

From-SVN: r29630
1999-09-23 19:45:39 +00:00
Kaveh R. Ghazi
c2e3db9254 gjavah.c (get_field_name, [...]): Use xmalloc, not malloc.
* gjavah.c (get_field_name, print_method_info, print_include,
	add_namelet): Use xmalloc, not malloc.

	* jcf-depend.c (add_entry): Likewise.  Use xstrdup, not strdup.
	(munge): Use xrealloc, not realloc, trust xrealloc to handle a
	NULL pointer.

	* jcf-io.c (open_in_zip, find_class): Use xstrdup, not strdup.

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

	* jcf-path.c (add_entry): Likewise.

	* jcf.h (ALLOC, REALLOC): Use xmalloc/xrealloc, not malloc/realloc.

	* jv-scan.c (xmalloc): Remove definition.

	* jvgenmain.c (xmalloc): Likewise.

	* jvspec.c (lang_specific_driver): Use xcalloc, not xmalloc/bzero.

	* lex.c (java_store_unicode): Use xrealloc, not realloc.

	* parse-scan.y: Use concat, not of xmalloc/assign/strcpy.  Use
	concat, not xmalloc/sprintf.
	(java_push_parser_context): Use xcalloc, not xmalloc/bzero.
	(xstrdup): Remove definition.

	* parse.y (duplicate_declaration_error_p,
	constructor_circularity_msg, verify_constructor_circularity,
	check_abstract_method_definitions, java_check_regular_methods,
	java_check_abstract_methods, patch_method_invocation,
	check_for_static_method_reference, patch_assignment, patch_binop,
	patch_cast, array_constructor_check_entry, patch_return,
	patch_conditional_expr): Use xstrdup, not strdup.

	* zextract.c (ALLOC): Use xmalloc, not malloc.

From-SVN: r29457
1999-09-16 15:45:15 +00:00
Kaveh R. Ghazi
9257393c20 Makefile.in (gcc.o, [...]): Depend on gcc.h.
* Makefile.in (gcc.o, gccspec.o, cppspec.o): Depend on gcc.h.

	* gcc.h: New file.
	(lang_specific_driver): Don't take a function pointer parameter.
	All callers changed.

	* gcc.c: Include gcc.h.
	(do_spec, fancy_abort,lang_specific_driver,lang_specific_pre_link,
	lang_specific_extra_outfiles, fatal): Don't declare.
	(multilib_defaults_raw): Constify.
	(read_specs): Call memset, rather than bzero.
	(main): Call return, not exit.
	(lookup_compiler): Call memcpy, not bcopy.
	(fatal): Make extern.

	* cppspec.c: Include gcc.h.
	(lang_specific_driver): Initialize variable `quote'.  Constify a
	char*.  All calls to the function pointer parameter now
	explicitly call `fatal'.

	* gccspec.c (lang_specific_driver): Include gcc.h.

cp:

	* Make-lang.in (g++spec.o): Depend on system.h and gcc.h.

	* g++spec.c: Include gcc.h.
	(lang_specific_driver): Constify a char*.  Call xcalloc, not
 	xmalloc/bzero.  All calls to the function pointer parameter now
 	explicitly call `fatal'.

f:

	* Make-lang.in (g77spec.o): Depend on system.h and gcc.h.

	* g77spec.c: Include gcc.h.
	(g77_xargv): Constify.
	(g77_fn): Add parameter prototypes.
	(lookup_option, append_arg): Add static prototypes.
	(g77_newargv): Constify.
	(lookup_option, append_arg, lang_specific_driver): Constify a char*.
	(lang_specific_driver): All calls to the function pointer
 	parameter now explicitly call `fatal'.

java:

	* Make-lang.in (jvspec.o): Depend on system.h and gcc.h.

	* jvspec.c: Include gcc.h.  Don't include gansidecl.h.
	(do_spec, lang_specific_pre_link, lang_specific_driver,
	input_filename, input_filename_length): Don't declare.
	(main_class_name, jvgenmain_spec, lang_specific_driver):
	Constify a char*.
	(lang_specific_driver): All calls to the function pointer
	parameter now explicitly call `fatal'.

From-SVN: r29367
1999-09-13 03:57:40 +00:00
Tom Tromey
20c96b2a12 * jvspec.c (lang_specific_driver): Correctly handle --help again.
From-SVN: r28869
1999-08-25 18:37:05 +00:00
Kaveh R. Ghazi
be245ac0a0 gjavah.c (print_name, [...]): Add static prototype.
* gjavah.c (print_name, print_base_classname, utf8_cmp,
	cxx_keyword_subst, generate_access, name_is_method_p,
	get_field_name, print_field_name, super_class_name, print_include,
	decode_signature_piece, print_class_decls, usage, help,
	java_no_argument, version, add_namelet, print_namelet): Add static
	prototype.
	(print_base_classname, utf8_cmp, cxx_keyword_subst,
	name_is_method_p): Constify a char*.
	(get_field_name): Likewise.  Prefer xstrdup over malloc/strcpy.
	Provide a final else clause in an if-else-if.
	(print_field_info): Add missing final arg in function call to
	`print_field_name'.
	(print_method_info, decompile_method, decode_signature_piece,
	print_c_decl, print_full_cxx_name, print_stub,
	print_mangled_classname, super_class_name, print_include,
	add_namelet, add_class_decl, print_class_decls, process_file,
	help): Constify a char*.

	* jcf-write.c (jcf_handler, push_constant1, push_constant2,
	push_int_const, find_constant_wide, find_constant_index,
	push_long_const, field_op, maybe_wide, emit_dup, emit_pop,
	emit_iinc, emit_load_or_store, emit_load, emit_store, emit_unop,
	emit_binop, emit_reloc, emit_switch_reloc, emit_case_reloc,
	emit_if, emit_goto, emit_jsr, call_cleanups,
	make_class_file_name): Add static prototypes.
	(generate_bytecode_return, generate_bytecode_insns): Pass a
	NULL_PTR, not a NULL_TREE.

	* jv-scan.c: Include "jcf.h".
	(main): Declare using DEFUN macro.

	* jvspec.c (find_spec_file, lang_specific_pre_link,
	lang_specific_driver): Add prototypes.
	(find_spec_file): Constify a char*.

	* keyword.gperf (hash, java_keyword): Add prototypes.

	* lang.c (lang_print_error): Add static prototype.
	(lang_init): Prefer memcpy over bcopy to avoid casts.

	* lex.c (yylex): Add static prototype.

	* parse-scan.y: Include "lex.c" earlier.

	* parse.h: Remove redundant declaration for `yylex'.

	* parse.y (java_decl_equiv, binop_compound_p, search_loop,
	labeled_block_contains_loop_p): Add static prototypes.
	(not_accessible_p): Make static to match prototype.

	* verify.c (start_pc_cmp): Don't needlessly cast away const.

From-SVN: r28862
1999-08-25 13:59:28 +00:00
Andrew Haley
0b094f655a lang.c (flag_use_divide_subroutine): New variable.
1999-07-15  Andrew Haley  <aph@cygnus.com>

        * lang.c (flag_use_divide_subroutine): New variable.
        * typeck.c: (convert_ieee_real_to_integer): Bounds check
        fp-to-integer conversion.
        (convert): Call convert_ieee_real_to_integer when flag_fast_math
        is not set.

        * expr.c (build_java_soft_divmod): New function.
        (build_java_binop): Call build_java_soft_divmod if
        flag_use_divide_subroutine is set.
        * decl.c: soft_idiv_node, soft_irem_node, soft_ldiv_node, tree
        soft_lrem_node: new builtin functions.
        (init_decl_processing) Initialize the new builtins.
        * java-tree.h soft_idiv_node, soft_irem_node, soft_ldiv_node, tree
        soft_lrem_node: new builtin functions.
        (build_java_soft_divmod): New function.
        * parse.y: Call build_java_soft_divmod if
        flag_use_divide_subroutine is set.
        * parse.c: Rebuilt.

        * jvspec.c (lang_specific_driver): Always allow an extra arg (for
        a --specs= arg) even if not linking.
        * lang-options.h (DEFINE_LANG_NAME ("Java")): Add
        -fuse-divide-subroutine

From-SVN: r28209
1999-07-21 14:51:24 +00:00
Tom Tromey
4198d73419 * jvspec.c (lang_specific_driver): Recognize --help.
From-SVN: r27814
1999-06-28 11:34:35 +00:00
Kaveh R. Ghazi
ab3a6dd6e2 Warning fixes:
* class.c (build_utf8_ref): Initialize variable `field'.
        * decl.c (init_decl_processing): Initialize variable `field'.
        * expr.c (build_known_method_ref): Mark parameters `method_type',
        `method_signature' and `arg_list' with ATTRIBUTE_UNUSED.
        (process_jvm_instruction): Likewise for parameter `length'.
        * jvspec.c (lang_specific_driver): Mark variables `saw_math',
        `saw_libc', `saw_gc', `saw_threadlib' and `saw_libgcj' with
        ATTRIBUTE_UNUSED.
        * parse.y (maybe_generate_clinit): Remove unused variable
        `has_non_primitive_fields'.
        (find_in_imports_on_demand): Initialize variables `node_to_use'
        and `cl'.
        (patch_binop): Likewise for variable `prom_type'.
        (patch_unaryop): Likewise for variable `prom_type'.
        * verify.c (verify_jvm_instructions): Likewise for variable `last'.
        * xref.c (xref_table): Add missing initializer.

From-SVN: r27030
1999-05-19 11:30:30 +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