Commit Graph

721 Commits

Author SHA1 Message Date
Philipp Thomas
5e4adfbabc c-decl.c: Mark strings for translation.
2000-06-28  Philipp Thomas  <pthomas@suse.de>

	* c-decl.c : Mark strings for translation.
	(parmlist_tags_warning): Use distinct messages instead
	of conditional expressions.
	* diagnostic.c (v_message_with_decl): Mark string for translation.
	* gcc.c: Mark messages for translation.
	(display_help): Combine messages into one string where necessary.
	* mips-tfile.c: Add intl.h. Mark messages for translation.
	* rtl.c (fatal_with_file_and_line): Modify function for NLS. Mark
	messages for translation.
	* timevar.c: Mark messages for translation.
	* tlink.c: Likewise.
	* toplev.c: Likewise.

From-SVN: r34773
2000-06-28 23:46:27 +00:00
Michael Meissner
289b3cc562 Fix spec %v3
From-SVN: r34586
2000-06-18 02:37:02 +00:00
Jeff Law
c809addafe Thinko in last change.
From-SVN: r34551
2000-06-14 10:38:54 -06:00
David O'Brien
e9cefc3e99 gcc.c (main): Quiet compiler warnings.
* gcc.c (main): Quiet compiler warnings.  argv is assumed to be
        writable in parts of the GCC code.

From-SVN: r34550
2000-06-14 10:35:16 -06:00
Kaveh R. Ghazi
f31e826ba3 getopt.h (getopt): Also check HAVE_DECL_* when prototyping.
include:
	* getopt.h (getopt): Also check HAVE_DECL_* when prototyping.

	* libiberty.h (basename): Likewise.

gcc:
	* aclocal.m4 (gcc_AC_CHECK_DECL, gcc_AC_CHECK_DECLS): New macros
	rewritten from the internals of gcc_AC_NEED_DECLARATION{S}.

	* configure.in (gcc_AC_CHECK_DECLS): Call this instead of
	gcc_AC_NEED_DECLARATIONS.

	* dwarfout.c: Don't prototype time().

	* gcc.c: Check HAVE_DECL_* instead of NEED_DECLARATION_*.

	* system.h: Likewise.

	* toplev.c: Likewise.

From-SVN: r34108
2000-05-23 17:42:19 +00:00
Zack Weinberg
fbd4035990 top level:
* diagnostic.c: Eliminate implicit int.
	* except.c, gcc.c: Add static prototypes.
	* final.c (final_end_function): Mark file arg ATTRIBUTE_UNUSED.
	* gensupport.c (process_rtx): Use XVEC to initialize vector
	slot of 'split'.

	* print-rtl.c: If DEBUG_REGISTER_NAMES, define static
	debug_reg_names instead of static reg_names.  If not, define
	global reg_names.
	* regclass.c: Don't define global reg_names unless
	DEBUG_REGISTER_NAMES is defined.

	* reload1.c (order_regs_for_reload): Remove unused variable.
	* varasm.c: Include output.h after defaults.h.  Define
	eh_frame_section as function of no args, not of unspecified args.

	* gcc.c: Constify argbuf; arguments to store_arg,
	process_command, main; elements of struct command and struct
	switchstr; local variables in execute, process_command, main.

cp:
	* except.c: Add static prototypes.

From-SVN: r34054
2000-05-20 19:45:36 +00:00
Zack Weinberg
83a0c79941 gcc.c (used_arg): Skip over a semicolon at the end of the split-up loop; don't break out of it.
* gcc.c (used_arg): Skip over a semicolon at the end of the
	split-up loop; don't break out of it.

From-SVN: r33807
2000-05-09 21:55:11 +00:00
Zack Weinberg
3b304f5b7d top level:
* Makefile.in (WARN_CFLAGS): Add -Wwrite-strings.
	(tree.o): Depend on output.h.

	* c-decl.c (pending_invalid_xref_file,
	current_function_prototype_file): Constify.
	(pushdecl): Constify a local char *.
	(define_label): Constify filename parameter.
	* c-lex.c (init_parse): Constify parameter and return value.
	* c-typeck.c (c_expand_asm_operands): Constify filename parameter.
	* c-tree.h: Update prototypes.
	* c-parse.in: Constify filename member of %union, and if_stmt_file.
	* c-parse.y, c-parse.c, c-parse.h, objc/objc-parse.y,
	objc/objc-parse.c: Regenerate.

	* dwarfout.c (dwarfout_init): Constify main_input_filename parameter.
	* dwarfout.h: Update prototypes.
	* expr.c (expand_expr): Constify a local char *.
	* flags.h: Constify main_input_filename.
	* function.c (expand_function_end): Constify filename parameter.
	* genrecog.c (make_insn_sequence): Use a character array for
	c_test_pos.
	(main): Remove unused variables.
	* input.h: Constify input_filename, main_input_filename, and
	file_stack.name.  Update prototypes.
	* output.h: Declare first_global_object_name and
	weak_global_object_name here, as const char *.
	* stmt.c (expand_asm_operands): Constify filename parameter.
	* toplev.c (compile_file, push_srcloc, debug_start_source_file):
	Constify filename parameter.
	(input_filename, main_input_filename): Constify.
	* toplev.h: Update prototypes.
	* tree.c: Include output.h.  Don't declare
	first_global_object_name or weak_global_object_name.  Clean up string
	bashing in get_file_function_name_long.
	* tree.h (struct tree_decl): Constify filename member.
	(input_filename): Constify.
	Update prototypes.
	* varasm.c (first_global_object_name, weak_global_object_name):
	Constify.
	(assemble_start_function, assemble_variable): Clean up string bashing.

	* gcc.c: Constify all spec-related strings initialized,
	transitively, from string constants.  Constify all strings
	and string variables related to multilibs.
	(set_spec, read_specs): Cast argument to free to PTR.
	(used_arg): Do not modify multilib_matches.  Use strncmp plus
	length comparison to compare multilib switches.
	* genmultilib: Constify everything declared in multilib.h.

ch:
	* ch-tree.h: Update prototypes.  Remove prototypes for
	functions declared elsewhere.
	* decl.c (define_label): Constify filename parameter.
	* grant.c (globalize_decl, set_default_grant_file): Constify
	local char * variables.  Don't declare
	first_global_object_name or asm_out_file.
	* lang.c (chill_real_input_filename): Constify.
	* lex.c (init_parse): Constify parameter and return value.
	* parse.c: Don't declare input_filename.
	(ch_expand_asm_operands): Constify filename parameter.
	(parse_multi_dimension_case_action): Constify local char *.
	* satisfy.c (safe_satisfy_decl): Constify local char *.

cp:
	* cp-tree.h: Constify tree_srcloc.filename, tinst_level.file,
	and pending_inline.filename.  Update prototypes.
	* decl.c (define_label): Constify filename parameter.
	* decl2.c (warn_if_unknown_interface): Constify local char *.
	* input.c Constify input_source.filename. Don't declare
	input_filename or lineno.  Constify filename parameter to feed_input.
	* lex.c (init_parse): Constify parameter and return value.
	(cp_pragma_interface, cp_pragma_implementation): Constify
	filename argument.
	(reinit_parse_for_method, reinit_parse_for_block,
	reinit_parse_for_expr, feed_defarg, handle_cp_pragma):
	Constify local char *.
	* pt.c: Don't declare lineno or input_filename.
	(print_template_context, tsubst_friend_function, tsubst_decl,
	tsubst, instantiate_decl): Constify local char *.
	* semantics.c (expand_body): Constify local char *.
	* tree.c (build_srcloc): Constify filename parameter.
	* typeck.c (c_expand_asm_operands): Constify filename
	parameter.

f:
	* com.c (ffecom_subscript_check_): Constify array_name
	parameter. Clean up string bashing.
	(ffecom_arrayref_, ffecom_char_args_x_): Constify array_name
	parameter.
	(ffecom_do_entry_, ffecom_gen_sfuncdef_, ffecom_start_progunit_,
	ffecom_sym_transform_, ffecom_sym_transform_assign_): Constify
	local char *.
	(init_parse): Constify parameter and return value.
	* lex.c: Include dwarfout.h instead of prototyping dwarfout_*
	functions here.
	(ffelex_file_pop_, ffelex_file_push_): Constify filename parameter.
	(ffelex_hash_, ffelex_include_): Constify local char *.
	* std.c (ffestd_exec_end): Constify local char *.
	* where.c (ffewhere_file_new): Constify filename parameter.
	* where.h: Update prototypes.

java:
	* check_init.c (check_init): Constify local char *.
	* class.c (push_class): Constify local char *.
	* java_tree.h: Update prototypes.
	* jcf-io.c (open_class): Constify filename parameter and
	return value.
	(find_class): Remove redundant string copy.  Cast return from
	open_class.
	* jcf-parse.c (read_class, parse_class_file, yyparse):
	Constify local char *.
	* jcf-write.c (generate_bytecode_insns, generate_classfile):
	Constify local char *.
	* jcf.h (JCF): Constify filename and classname.
	(JCF_FINISH): Cast args to FREE to char * when appropriate.
	* lang.c (init_parse): Constify parameter and return value.
	* lex.c (java_get_line_col): Constify filename parameter.
	* parse.h: Constify parser_ctxt.filename.  Update prototypes.
	* parse.y (java_parser_context_suspend,
	issue_warning_error_from_context, safe_layout_class): Constify
	local char *.
	* parse.c: Regenerate.

From-SVN: r33804
2000-05-09 19:56:01 +00:00
Mark Elbrecht
4ebe197a38 * gcc.c (set_input) [HAVE_DOS_STYLE_FILE_SYSTEM]: Skip drive name.
From-SVN: r33717
2000-05-05 13:03:45 -06:00
Mark Elbrecht
ba40970f51 gcc.c (free_split_directories): Correct typo in explanation of make_relative_prefix.
* gcc.c (free_split_directories): Correct typo in explanation
        of make_relative_prefix.

From-SVN: r33693
2000-05-04 18:15:02 -06:00
Mumit Khan
b633b6c094 gcc.c (load_specs): New static function.
* gcc.c (load_specs): New static function.
        (read_specs): Use it.

From-SVN: r33395
2000-04-24 17:57:46 -06:00
Mumit Khan
03bf1c28ac gcc.c (lookup_compiler): Make multiple passes for case insensitive filesystems.
* gcc.c (lookup_compiler): Make multiple passes for case
        insensitive filesystems.

From-SVN: r33393
2000-04-24 17:35:43 -06:00
Zack Weinberg
6b32882f85 gcc.c (C specs): Pass -f(no-)show-column to the preprocessor.
* gcc.c (C specs): Pass -f(no-)show-column to the
          preprocessor.
	* ch/lang-specs.h, cp/lang-specs.h, f/lang-specs.h,
	objc/lang-specs.h: Likewise.

	* gcc.dg/cpp-redef-2.c, gcc.dg/cpp-tradwarn1.c,
	gcc.dg/cpp-unc.c: Add -fno-show-column to compiler options.

From-SVN: r32891
2000-04-03 23:03:20 +00:00
Tom Tromey
1f58da7fe3 gcc.c (handle_braces): In {x*...} case, break out of loop if switch is found.
* gcc.c (handle_braces): In {x*...} case, break out of loop if
	switch is found.

From-SVN: r32784
2000-03-28 18:06:15 +00:00
Tom Tromey
8097c429f9 gcc.c (handle_braces): Recognize `%{<S}' construct.
* gcc.c (handle_braces): Recognize `%{<S}' construct.
	(SWITCH_OK, SWITCH_FALSE, SWITCH_IGNORE, SWITCH_LIVE): New
	defines.
	(process_command): Use them.
	(check_live_switch): Likewise.
	(give_switch): Skip ignored switches.

From-SVN: r32756
2000-03-26 23:23:01 +00:00
Nick Clifton
3ac63d9488 Fix spec string parsing bugs
From-SVN: r32535
2000-03-14 18:08:35 +00:00
Ben Collins
0a8d66180c Makefile.in: Pass a new MULTILIB_EXCLUSIONS option as the sixth argument to genmultilib.
* Makefile.in: Pass a new MULTILIB_EXCLUSIONS option as the sixth
	argument to genmultilib.
	* genmultilib: accept new MULTILIB_EXCLUSIONS option and output
	the contents into the multilib.h header.
	* gcc.c: Declare multilib_exclusions for the specs file.
	(set_multilib_dir): Use it.
	(print_multilib_info): Likewise.
	* t-linux64: Declare arguments for new MULTILIB_EXCLUSIONS option
	to pass to genmultilib.

From-SVN: r32365
2000-03-06 19:05:52 +01:00
Jeff Law
3b708058ed Fix copyrights.
From-SVN: r32175
2000-02-25 23:23:30 -07: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
Jonathan Larmour
3ea8083fc9 Jonathan Larmour <jlarmour@redhat.co.uk>:
Add new __GNUC_PATCHLEVEL__ define.

From-SVN: r32004
2000-02-15 23:54:53 -08: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
Zack Weinberg
52c207e293 Makefile.in (fixinc.sh): Depend on specs.
* Makefile.in (fixinc.sh): Depend on specs.
        * fixinc/Makefile.in: Add rule to create machname.h.
        (fixlib.o): Depend on machname.h.
        * fixinc/fixtests.c (machine_name): New test.
        * fixinc/fixfixes.c (machine_name): New fix.
        * fixinc/fixlib.c (mn_get_regexps): New helper function for
        the machine_name test and fix.
        * fixinc/fixlib.h: Prototype it.
        * fixinc/inclhack.def (machine_name): Use the C test and fix.
	* fixinc/fixincl.x, fixinc/inclhack.sh: Rebuild.

        * gcc.c (do_spec_1) [case P]: Take care not to create
        identifiers with three leading or trailing underscores.

	* fixinc/Makefile.in (FIXINC_DEFS): Add -DIN_GCC.
	(fixincl): Don't specify libraries twice on link line.
	(gnu-regex.o): Remove special rule.
	* fixinc/gnu-regex.c: Define REGEX_MALLOC if C_ALLOCA was
	defined by config.h.  Do not define _REGEX_RE_COMP.
	(regcomp): Allocate and initialize a fastmap.
	* fixinc/gnu-regex.h: Do not define _REGEX_RE_COMP.

From-SVN: r31542
2000-01-20 18:25:12 +00:00
Kaveh R. Ghazi
711d877c9e eh-common.h: PROTO -> PARAMS.
* eh-common.h: PROTO -> PARAMS.
	* emit-rtl.c: Likewise.
	* errors.c: Likewise.
	* errors.h: Likewise.
	* except.c: Likewise.
	* except.h: Likewise.
	* explow.c: Likewise.
	* expmed.c: Likewise.
	* expr.c: Likewise.
	* expr.h: Likewise.
	* final.c: Likewise.
	* fix-header.c: Likewise.
	* flow.c: Likewise.
	* fold-const.c: Likewise.
	* function.c: Likewise.
	* function.h: Likewise.
	* gcc.c: Likewise.
	* gcov-io.h: Likewise.
	* gcov.c: Likewise.
	* gcse.c: Likewise.

From-SVN: r31419
2000-01-14 17:14:43 +00:00
Jason Merrill
512b62fb1b configure.in (i?86-*-beos{pe,elf,}*): Recognize.
* configure.in (i?86-*-beos{pe,elf,}*): Recognize.
        * i386/t-beos, i386/x-beos, i386/xm-beos.h: New files.
        * i386/beos-elf.h, i386/beos-pe.h: New files.

        * Makefile.in (CROSS_SYSTEM_HEADER_DIR): New.
        * cross-make (SYSTEM_HEADER_DIR): Define using
        CROSS_SYSTEM_HEADER_DIR.

        * gcc.c (LIBRARY_PATH_ENV): Provide default.
        (process_command): Use it.
        (main): Likewise.  Kill trailing = from env vars.
        (build_search_list): Put it back.
        * collect2.c (main): Use LIBRARY_PATH_ENV.

        * configure.in (GCC_NEED_DECLARATIONS): Add environ.
        * toplev.c: Use NEED_DECLARATION_ENVIRON.

        * tm.texi (Frame Layout): Document SMALL_STACK.
        * c-common.c (c_common_nodes_and_builtins): Check it.

        * system.h: Undef alloca after including glibc's <stdlib.h>,
        if USE_C_ALLOCA is defined.

        * gcc.c (set_input): New fn.
        (main): After all input files are compiled, reset the input file
        info to the first.

        * aclocal.m4 (rindex, index): If already defined, don't attempt
        to redefine.

        * ginclude/varargs.h: (__va_list__): Define ifndef.
        * ginclude/stdarg.h: Likewise.

        * ginclude/stddef.h (__WCHAR_TYPE__) [BEOS]: Use int
        instead of unsigned char.

        * hash.h (true, false, boolean): Undef before enum.

From-SVN: r31366
2000-01-12 19:37:06 -05:00
Jason Merrill
203588e7ff fix typos
From-SVN: r31336
2000-01-11 16:23:49 -05:00
Mumit Khan
d5b6516da5 cccp.c: Delete PATH_SEPARATOR, DIR_SEPARATOR and IS_DIR_SEPARATOR macros.
2000-01-06  Mumit Khan  <khan@xraylith.wisc.edu>

	* cccp.c: Delete PATH_SEPARATOR, DIR_SEPARATOR and
	IS_DIR_SEPARATOR macros.
	* collect2.c: Likewise.
	* cppinit.c: Likewise.
	* dwarf2out.c: Likewise.
	* gcc.c: Likewise.
	* gcov.c: Likewise.
	* prefix.c: Likewise.
	* rtl.c: Likewise.
	* toplev.c: Likewise.
	* system.h: And move to here.

From-SVN: r31264
2000-01-07 00:16:51 +00:00
Kaveh R. Ghazi
a544cfd201 builtins.c (expand_builtin_strlen): Initialize variable `icode'.
* builtins.c (expand_builtin_strlen): Initialize variable `icode'.

	* calls.c (expand_call): Likewise for
	`old_stack_arg_under_construction'.

	* cpphash.c (macroexpand): Likewise for `args' and `rest_zero'.

	* function.c (pad_to_arg_alignment): Likewise for `save_var' and
	`save_constant'.

	* gcc.c (execute): Likewise for `ut' and `st'.

	* genattrtab.c (attr_rtx): Likewise for `rt_val'.

	* genopinit.c (gen_insn): Likewise for `m1', `m2' and `op'.

	* jump.c (jump_optimize_1): Likewise for `temp2'.

	* local-alloc.c (block_alloc): Likewise for `r1'.

	* loop.c (recombine_givs): Likewise for `life_start' and `life_end'.

	* reg-stack.c (check_asm_stack_operands): Likewise for `clobber_reg'.
	(subst_asm_stack_regs): Likewise for `clobber_reg' and `clobber_loc'.

	* regmove.c (fixup_match_1): Likewise for `insn_const', `dst_node'
	and `set2'.

	* reload.c (find_reloads): Likewise for `goal_alternative_number'
	and `goal_earlyclobber'.

	* scan-decls.c (scan_decls): Likewise for `prev_id_end'.

	* sdbout.c (sdbout_one_type): Likewise for `member_scl'.

	* stupid.c (stupid_life_analysis): Likewise for `chain'.

	* unroll.c (copy_loop_body): Likewise for `copy'.

	* varasm.c (output_constructor): Likewise for `byte'.

ch:
	* actions.c (update_else_range_for_int_const): Initialize
	variables `lowval' and `highval'.
	(update_else_range_for_range): Likewise for `low_range_val' and
	`high_range_val'.

cp:
	* class.c (warn_hidden): Initialize variable `fndecl'.

From-SVN: r31207
2000-01-04 16:29:41 +00:00
Richard Henderson
223dca6a20 cppp.c (main): Set trigraphs and __STRICT_ANSI__ as appropriate for -lang-c89 and -std=*.
* cppp.c (main): Set trigraphs and __STRICT_ANSI__ as
        appropriate for -lang-c89 and -std=*.
        * cppinit.c (cpp_handle_option): Likewise.
        (new_pending_define): New, split out from cpp_handle_option.
        * gcc.c (default_compilers): Don't define __STRICT_ANSI__
        or enable trigraphs for -ansi/-std=*.

        * ginclude/stdarg.h (__va_copy): New.
        (va_copy): Don't define for C89.

From-SVN: r30921
1999-12-14 08:05:23 -08:00
Kaveh R. Ghazi
913d08334a c-common.c (check_format_info): Don't call a variadic function with a non-literal format string.
* c-common.c (check_format_info): Don't call a variadic function
	with a non-literal format string.

	* c-decl.c (grokdeclarator, start_struct, finish_struct): Likewise.

	* c-typeck.c (build_component_ref, build_unary_op, lvalue_or_else,
	pedantic_lvalue_warning, error_init, pedwarn_init, warning_init):
	Likewise.

	* cccp.c (check_macro_name, do_xifdef, vwarning_with_line):
	Likewise.

	* collect2.c (collect_wait): Likewise.

	* dbxout.c (dbxout_type): Likewise.

	* gcc.c (do_spec_1): Likewise.

	* genemit.c (gen_insn, gen_expand): Likewise.

	* genrecog.c (write_switch, write_subroutine): Likewise.

	* mips-tfile.c (catch_signal, botch): Likewise.

	* print-rtl.c (print_rtx): Likewise.

	* toplev.c (default_print_error_function, report_error_function,
	_fatal_insn): Likewise.

From-SVN: r30666
1999-11-25 16:58:32 +00:00
Tom Tromey
a1d9074cf1 * gcc.c (do_spec_1): Support text between %u' and %O'.
From-SVN: r30478
1999-11-10 19:59:20 +00:00
Tom Tromey
0deb20dfd3 [multiple changes]
Tue Nov  9 10:30:08 1999  Tom Tromey  <tromey@cygnus.com>

	* config/i386/xm-djgpp.h (HAVE_DOS_BASED_FILE_SYSTEM): Renamed
	from HAVE_DOS_BASED_FILESYSTEM.
	* gcc.c (find_a_file): Use HAVE_DOS_BASED_FILE_SYSTEM, not
	HAVE_DOS_BASED_FILESYSTEM.
	(main): Likewise.
	(split_directories): Only special-case DOS file names if
	HAVE_DOS_BASED_FILE_SYSTEM is defined.  Use IS_DIR_SEPARATOR
	instead of explicit tests.  Conditionalize on !VMS.
	(make_relative_prefix): Use IS_DIR_SEPARATOR instead of explicit
	tests.  Conditionalize on !VMS.
	(process_command): Only use make_relative_prefix if !VMS.
	(free_split_directories): Conditionalize on !VMS.
	(DIR_UP): Conditionalize on !VMS.

Wed Jun  9 16:57:11 1999  Mumit Khan  <khan@xraylith.wisc.edu>

	* gcc.c (STANDARD_BINDIR_PREFIX): Provide default.

Fri Feb  5 14:22:01 1999  Mumit Khan  <khan@xraylith.wisc.edu>

	* gcc.c (make_relative_prefix): Handle the HAVE_EXECUTABLE_SUFFIX
	case.

Mon Nov  8 14:16:57 1999  Michael Meissner  <meissner@cygnus.com>

	* invoke.texi (Environment Variables): Document relative path
	lookup.
	* gcc.c (DIR_UP): If not defined, define as "..".
	(standard_bindir_prefix): New static, holds target location to
	install binaries.
	(split_directories): New function to split a filename into
	component directories.
	(free_split_directories): New function, release memory allocated
	by split_directories.
	(make_relative_prefix): New function, make a relative pathname if
	the compiler is not in the expected location.
	(process_command): If GCC_EXEC_PREFIX was not specified, see if we
	can figure out an appropriate prefix from argv[0].
	* Makefile.in (DRIVER_DEFINES): Use unlibsubdir in definition of
	STANDARD_STARTFILE_PREFIX and TOOLDIR_BASE_PREFIX.  Define
	STANDARD_BINDIR_PREFIX.

From-SVN: r30464
1999-11-10 01:19:08 +00:00
Richard Kenner
14a774a9d2 [multiple changes]
Fri Oct 29 15:25:07 1999  Arnaud Charlet  <charlet@ACT-Europe.FR>

	* gcov.c (DIR_SEPARATOR): Provide default.
	(output_data): Add test for MS-DOS format absolute filename.
	(fancy_abort): Correct program name.
	(open_files): Open all files in binary mode.
	* libgcc2.c (__bb_exit_func): Likewise.

	* profile.c (init_branch_prob): Specify binary when opening files.

	* flags.h (flag_unwind_tables): New decl.
	* toplev.c (flag_unwind_table): New definition.
	(f_options): Add -funwind-tables.
	(decode_g_option): Clarify warning when unknown -g option is given.
	(rest_of_compilation): If inside an inlined external function,
	pretend we are just being declared.

	* dwarf2out.c (dwarf2out_do_frame): Check -funwind_tables.
	(dwarf2out_frame_finish): Likewise.

Fri Oct 29 06:32:44 1999  Geoffrey Keating  <geoffk@cygnus.com>

	* flow.c (propagate_block): When the last reference to a label
 	before an ADDR_VEC is deleted because the reference is a dead
 	store, delete the ADDR_VEC.

Fri Oct 29 07:44:26 1999  Vasco Pedro  <vp@di.fct.unl.pt>

	* fold-const.c (merge_ranges): In not in0, but in1, handle
	upper bounds equal like subset case.

Thu Oct 28 19:22:24 1999  Douglas Rupp <rupp@gnat.com>

	* dbxout.c (dbxout_parms): Generate a second stabs line for parameters
	passed in a register but moved to the stack.

Thu Oct 28 19:12:57 1999  Sam Tardieu  <tardieu@act-europe.fr>

	* gcc.c (pass_exit_codes, greatest_status): New variables.
	(struct option_map): Add entry for "--pass-exit-codes".
	(execute): Update greatest_status if error.
	(display_help): Add documentation for -pass-exit-codes.
	(process_command): Handle -pass-exit-codes.
	(main): Look at pass_exit_codes and greatest_status on call to exit.

Thu Oct 28 18:06:50 1999  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* reload.c (find_reloads): Refine test for no input reload
	case to not includes reloads emitted after insn.

	* function.c (find_temp_slots_from_address): Handle sum involving
	a register that points to a temp slot.
	(update_temp_slot_address): Make recursive call if both old and
	new are PLUS with a common operand.
	* calls.c (expand_call): Mark temp slot for result as having
	address taken.

	* rtlanal.c (reg_referenced_p, case IF_THEN_ELSE): New case.

	* gcc.c (process_command): Add standard_exec_prefix with "GCC"
	component as well as "BINUTILS".

	* integrate.h (copy_rtx_and_substitute): New arg, FOR_LHS.
	* integrate.c (copy_rtx_and_substitute): Likewise.
	(expand_inline_function, integrate_parm_decls, integrate_decl_tree):
	All callers changed.
	* unroll.c (inital_reg_note_copy, copy_loop_body): Likewise.

	* dbxout.c (dbxout_type, case INTEGER_TYPE_NODE): If can use
	gdb extensions, write size of type; also be more consistent
	in using references when this is a subtype.

	* pa.md (extv, extzv, insv): Use define_expand to reject constant
	that is out of range.

	* loop.c (unknown_constant_address_altered): New variable.
	(prescan_loop): Initialize it.
	(note_addr_stored): Set it for RTX_UNCHANGING_P MEM.
	(invariant_p, case MEM): Remove handling for volatile and readony;
	check new variable if readonly.
	(check_dbra_loop): Chdeck unknown_constant_address_altered.

	* cse.c (canon_hash, case MEM): Do not record if BLKmode.
	(addr_affects_sp_p): Removed from note_mem_written and only
	define #ifdef AUTO_INC_DEC.

	* alpha.c (input_operand, case ADDRESSOF): Treat as REG.

	* regclass.c (record_reg_classes): Properly handle register move
	directions.

	* varasm.c (initializer_constant_valid_p, case MINUS_EXPR):
	Don't think valid if both operands are invalid.
	(struct constant_descriptor): New field RTL.
	(mark_const_hash_entry): Mark it.
	(record_constant{,_rtx}): Initialize it.
	(output_constant_def): Allocate RTL in permanent obstack and
	save in table.
	({record,compare}_constant_1): Modes must match for
	CONSTRUCTOR of ARRAY_TYPE.

	* c-common.h (initializer_constant_valid_p): Delete decl from here.
	* output.h (initializer_constant_valid_p): Move decl to here.
	* c-common.c (initializer_constant_valid_p): Delete function from here.
	* varasm.c (initializer_constant_valid_p): Move function to here.

	* tree.h (STRIP_SIGN_NOPS): New macro.
	* fold-const.c (optimize_minmax_comparison): New function.
	(invert_truthvalue, case WITH_RECORD_EXPR): New case.
	(fold): Use STRIP_SIGN_NOPS instead of STRIP_TYPE_NOPS.
	(fold, case EQ_EXPR): Call optimize_minmax_comparison and add
	cases with ABS_EXPR, NEGATE_EXPR, PLUS_EXPR, MINUS_EXPR, and
	widening conversions.
	(fold, case LE_EXPR): Rework changing unsigned to signed comparisons
	to look at size of mode, not precision of type; also add missing cases.
	(optimize_bit_field_compare, decode_field_reference): Don't try to
	optimize COMPONENT_REF of a PLACEHOLDER_EXPR.

	* dwarf2out.c (ctype.h): Include.
	(dwarf2out_set_demangle_name_func): New function.
	(size_of_line_info): Deleted.
	(output_line_info): Compute size of line info table from difference
	of labels.
	(base_type_die, add_name_attribute): Call demangle function, if any.
	(field_byte_offset): Use bits per word for variable length fields.
	(gen_array_type_die): Add array name.
	(gen_subprogram_die): Ignore DECL_INLINE if -fno-inline.
	(dwarf2out_add_library_unit_info): New function.

	* explow.c (set_stack_check_libfunc): New function.
	(stack_check_libfunc): New static variable.
	(probe_stack_range): Allow front-end to set up a libfunc to call.

	* combine.c (simplify_comparison): When making comparison in wider
	mode, check for having commuted an AND and a SUBREG.
	(contains_muldiv): New function.
	(try_combine): Call it when dividing a PARALLEL.
	(simplify_rtx, case TRUNCATE): Don't remove for umulsi3_highpart.
	(simplify_comparison, case ASHIFTRT): Recognize sign-extension of
	a PLUS.
	(record_value_for_reg): If TEM is a binary operation with two CLOBBERs,
	use one of the CLOBBERs instead.
	(if_then_else_cond): If comparing against zero, just return thing
	being compared.

	* optabs.c (expand_abs): If machine has MAX, ABS (x) is MAX (x, -x).
	Don't generate shifts and subtract if have conditional arithmetic.

	* rtl.h (delete_barrier): New declaration.
	* jump.c (jump_optimize): Set up to handle conditional call.
	In conditional arithmetic case, handle CALL_INSN followed by a BARRIER.
	(delete_barrier): New function.

	* rtl.c (read_rtx): Call fatal if bad RTL code; check for bad mode.

	* recog.c (nonmemory_operand): Accept ADDRESSOF.

	* tree.c (build_type_attribute_variant): Push to obstack of
	ttype around type_hash_canon call.

	* expr.c (placeholder_list): Move decl to file scope.
	(expand_expr): Don't force access to volatile just because its
	address is taken.
	If ignoring reference operations, just expand the operands.
	(expand_expr, case COMPONENT_REF): Propagate
	EXPAND_CONST_ADDRESS to recursive call when expanding inner.
	Refine test for using bitfield operations vs pointer punning.
	(expand_expr, case CONVERT_EXPR): If converting to
	BLKmode UNION_TYPE from BLKmode, just return inner object.
	Use proper mode in store_field call.
	Properly set sizes of object to store and total size in store_field
	call for convert to union.
	(expand_expr, case ARRAY_REF): If OP0 is in a register, put it in
	memory (like for ADDR_EXPR).  Also, don't put constant in register if
	we'll want it in memory.
	(readonly_fields_p): New function.
	(expand_expr, case INDIRECT_REF): Call it if LHS.
	(expand_assignment): Handle a RESULT_DECL where
	DECL_RTL is a PARALLEL.
	(do_jump, case WITH_RECORD_EXPR): New case.
	(get_inner_reference): Always go inside a CONVERT_EXPR
	and NOP_EXPR if both modes are the same.
	(store_field): Use bitfield operations if size of bitsize is not same
	as size of RHS's type.
	Check for bitpos not a multiple of alignment in BLKmode case.
	Do block move in largest possible alignment.
	(store_constructor): Set BITSIZE to -1 for variable size and properly
 	in case of array of BLKmode.
	(expand_expr_unaligned): New function.
	(do_compare_and_jump): Call it.

	* mips/iris5.h (SWITCHES_NEED_SPACES): New macro.
	* collect2.c (main): Only allow -ofoo if SWITCHES_NEED_SPACES
	does not include 'o'.

	* function.c (instantiate_virtual_regs_1, case SET): Handle case where
	both SET_DEST and SET_SRC reference a virtual register.
	(gen_mem_addressof): Copy RTX_UNCHANGING_P from new REG to old REG.

	* integrate.c (expand_inline_function): Handle case of setting
	virtual stack vars register (from built in setjmp); when parameter
	lives in memory, expand virtual_{stack_vars,incoming_args}_rtx early.
	(subst_constant): Add new parm, MEMONLY.
	(expand_inline_function, integrate_parm_decls): Pass new parm.
	(integrate_decl_tree): Likewise.
	(copy_rtx_and_substitute, case MEM): Do copy RTX_UNCHANGING_P.
	(try_constants): Call subst_constants twice, with MEMONLY 0 and 1.
	(copy_rtx_and_substitute, case SET): Add explicit calls to
	copy_rtx_and_substitute for both sides.

	* stmt.c (expand_asm_operands): Don't use TREE_STRING_LENGTH for
	constraints.
	(pushcase{,_range}): Convert to NOMINAL_TYPE after checking for
	within INDEX_TYPE, instead of before.
	(fixup_gotos): Use f->target_rtl, not the next insn,
	since latter may be from a later fixup.
	(expand_value_return): Correctly convert VAL when promoting function
	return; support RETURN_REG being a PARALLEL.
	(expand_return): When checking for result in regs and having
	cleanup, consider PARALLEL in DECL_RTL as being in regs.

From-SVN: r30299
1999-10-31 20:11:22 -05:00
Kaveh R. Ghazi
a8f227e703 flow.c (debug_flow_info): Add prototype.
* flow.c (debug_flow_info): Add prototype.

        * gcc.c (main): Likewise.

        * gcse.c (expr_reaches_here_p_work, pre_expr_reaches_here_p_work):
        Likewise.

        * reload1.c (failed_reload, set_reload_reg): Likewise.

        * mips-tfile.c (main): Likewise.
        (pfatal_with_name, fancy_abort, botch, fatal, catch_signal): Mark
        with ATTRIBUTE_NORETURN.

From-SVN: r30262
1999-10-29 17:51:38 +00:00
Kaveh R. Ghazi
5a657fc371 libiberty.h (make_temp_file): Add a prototype.
include:

        * libiberty.h (make_temp_file):  Add a prototype.

libiberty:

        * choose-temp.c: Remove obsolete comment about gcc.
        (make_temp_file): Constify a char*.

gcc:

        * collect2.c (make_temp_file): Don't prototype.

        * gcc.c (make_temp_file): Likewise.

        * mips.c (mips_make_temp_file): Renamed from `make_temp_file'.

From-SVN: r29662
1999-09-25 13:11:17 +00:00
Jason Merrill
12a39b1264 toplev.c (documented_lang_options): Add -fshort-wchar.
* toplev.c (documented_lang_options): Add -fshort-wchar.
	* c-decl.c (c_decode_option): Likewise.
	(init_decl_processing): If -fshort-wchar, use 'short unsigned int'
	for wchar_t.
	* c-common.c, c-lex.c: Get WCHAR_TYPE_SIZE from wchar_type_node.
	* gcc.c (default_compilers): If -fshort-wchar,
	override __WCHAR_TYPE__.
	* tm.texi (C Dialect Options): Add -fshort-wchar.

From-SVN: r29638
1999-09-23 17:03:53 -04:00
Kaveh R. Ghazi
06b8b73051 * gcc.c (getrusage): Wrap prototype arguments in PROTO().
From-SVN: r29384
1999-09-13 21:46:32 +00:00
Zack Weinberg
03c41c05ec gcc.c: Include sys/resource.h.
1999-09-13 12:13 -0700  Zack Weinberg  <zack@bitmover.com>

	* gcc.c: Include sys/resource.h.
	(report_times): New flag.
	(execute):  If report_times is set, calculate and report the
	CPU time consumed by each subprocess.

	(rus, prus): New globals.
	(option_map): Add --time.
	(display_help): Document -time.
	(process_command): Set report_times if -time is given.
	Turn off -pipe if -time is given.

	* invoke.texi: Document new option -time.

	* configure.in: Check for getrusage.  Check if we have to
	prototype getrusage.
	* acconfig.h: Add NEED_DECLARATION_GETRUSAGE.
	* configure: Regenerate.
	* config.in: Regenerate.

From-SVN: r29381
1999-09-13 19:16:24 +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
Jeff Law
c5c7673583 Merge in gcc2-ss-010999
From-SVN: r29150
1999-09-06 23:49:18 -06:00
Kaveh R. Ghazi
ad85216ece c-aux-info.c (concat): Don't define.
* c-aux-info.c (concat): Don't define.

	* cccp.c (my_strerror): Likewise.  All callers changed to use
	xstrerror instead.
	(do_include): Call xstrdup, not xmalloc/strcpy.
	(grow_outbuf): Don't check if xrealloc returns NULL, it can't.
	(xmalloc, xrealloc, xcalloc, xstrdup): Don't define.

	* collect2.c (my_strsignal): Likewise.  All callers changed to use
	strsignal instead.
	(locatelib): Call xstrdup, not xmalloc/strcpy.

	* 1750a.h (ASM_OUTPUT_INTERNAL_LABEL): Call xmalloc, not malloc.

	* dsp16xx.c (override_options): Call xstrdup, not xmalloc/strcpy.

	* i370.h (ASM_DECLARE_FUNCTION_NAME): Call xmalloc, not malloc.

	* mips.c (build_mips16_call_stub): Call xstrdup, not xmalloc/strcpy.

	* cppinit.c (cpp_options_init): Call xcalloc, not xmalloc/bzero.

	* dwarfout.c (dwarfout_init): Call concat, not xmalloc/strcpy/...

	* except.c (new_eh_region_entry): Call xmalloc/xrealloc, not
	malloc/realloc.
	(find_all_handler_type_matches): Likewise.  Don't check return
	value.
	(get_new_handler, init_insn_eh_region, process_nestinfo): Call
	xmalloc, not malloc.
	(init_eh_nesting_info): Likewise.  Call xcalloc, not xmalloc/bzero.

	* gcc.c (xstrerror, xmalloc, xrealloc): Don't define.
	(init_spec): Call xcalloc, not xmalloc/bzero.
	(set_spec): Call xstrdup, not save_string.
	(record_temp_file): Call xstrdup, not xmalloc/strcpy.
	(find_a_file): Call xstrdup, not xmalloc/strcpy.
	(process_command): Call xstrdup, not save_string.
	(main): Call xcalloc, not xmalloc/bzero.

	* gcov.c (xmalloc): Don't define.
	(create_program_flow_graph): Call xcalloc, not xmalloc/bzero.
	(scan_for_source_files): Call xstrdup, not xmalloc/strcpy.
	(output_data): Call xcalloc, not xmalloc/bzero.

	* haifa-sched.c (schedule_insns): Call xcalloc, not xmalloc/bzero.

	* mips-tdump.c (xmalloc): Don't define.
	(print_symbol): Call xmalloc, not malloc.
	(read_tfile): Call xcalloc, not calloc.

	* mips-tfile.c (xfree, my_strsignal, xmalloc, xcalloc, xrealloc):
	Don't define.  All callers of xfree/my_strsignal changed to use
	free/strsignal instead.
	(allocate_cluster): Call xcalloc, not calloc.

	* objc/objc-act.c (lang_init): Call concat, not xmalloc/strcpy/...
	Fix memory leak, free allocated memory.

	* prefix.c (translate_name): Call xstrdup, not save_string.
	(update_path): Likewise.

	* profile.c (branch_prob): Call xstrdup, not xmalloc/strcpy.

	* protoize.c (xstrerror, xmalloc, xrealloc, xfree, savestring2):
	Don't define.  Callers of xfree/savestring2 changed to use
	free/concat instead.

	* reload1.c (reload): Call xcalloc, not xmalloc/bzero.
	(init_elim_table): Likewise.

	* resource.c (init_resource_info): Likewise.

	* stupid.c (stupid_life_analysis): Likewise.

	* toplev.c (xmalloc, xcalloc, xrealloc, xstrdup): Don't define.
	(open_dump_file): Call concat, not xmalloc/strcpy/...
	(clean_dump_file): Likewise.
	(compile_file): Call xstrdup, not xmalloc/strcpy.

From-SVN: r29148
1999-09-07 02:36:41 +00:00
Kaveh R. Ghazi
3995f0f9f2 * gcc.c (fatal): Make definition static to match prototype.
From-SVN: r28931
1999-08-27 13:50:23 +00:00
Zack Weinberg
987009bf0d system.h: Don't redefine abort or trim_filename.
1999-08-25 22:10 -0700  Zack Weinberg  <zack@bitmover.com>

	* system.h: Don't redefine abort or trim_filename.
	* rtl.h: Define abort to fancy_abort (__FILE__, __LINE__, 0)
	or fancy_abort (__FILE__, __LINE__, __FUNCTION__) depending on
	whether or not __FUNCTION__ is available.
	* tree.h: Duplicate rtl.h's definition of abort, for files
	that don't include rtl.h.  Delete all code to perform type
	checking with a compiler other than GCC.
	* varray.h: Delete all code to perform type checking with a
	compiler other than GCC.  Make VARRAY_CHECK() always evaluate
	its arguments exactly once, using a statement expression.
	Adjust the VARRAY_<type> accessor macros to match.
	* toplev.h (fatal_insn, fatal_insn_not_found): Kill.
	(_fatal_insn, _fatal_insn_not_found): New fns, take info on
	caller's location.  Define fatal_insn and fatal_insn_not_found
	as macros that use _fatal_insn and _fatal_insn_not_found.
	(fancy_abort, trim_filename): Kill prototypes.

	* rtl.c (trim_filename): Move here from toplev.c.
	(fancy_abort): New function.
	(DIR_SEPARATOR): Provide default definition.
	* tree.c (tree_check_failed, tree_class_check_failed): Go
	through fancy_abort.
	(tree_check, tree_class_check, cst_or_constructor_check,
	expr_check): Delete.
	* varray.c (varray_check_failed): New function.
	* toplev.c (fatal_insn, fatal_insn_not_found): Replace with
	_fatal_insn and _fatal_insn_not_found.  Go through
	fancy_abort.
	(trim_filename, fancy_abort): Delete.

	* builtins.c (expand_builtin_args_info): Report ICE with abort.
	* except.c (start_catch_handler): Report ICE with error/abort
	combo.
	* final.c (output_operand_lossage): Likewise.
	* flow.c (verify_flow_info): Likewise.

	* gcc.c: Prototype fatal.
	* gengenrtl.c: Undef abort after including rtl.h not system.h.
	* genattr.c, genattrtab.c, genemit.c, genextract.c,
	genflags.c, genopinit.c, genoutput.c, genpeep.c, genrecog.c:
	Don't define fancy_abort.

From-SVN: r28889
1999-08-26 05:18:44 +00:00
Jeffrey A Law
82fb18dd27 gcc.c: Update URLs and mail addresses.
* gcc.c: Update URLs and mail addresses.
        * gcc.texi: Likewise.

From-SVN: r28535
1999-08-05 03:16:27 -06:00
Ian Lance Taylor
ca6062011d gcc.c (access_check): New static function.
* gcc.c (access_check): New static function.
        (find_a_file): Use it when searching a directory list.
        * collect2.c (find_a_file): Don't accept directories found when
        searching a directory list.

From-SVN: r28486
1999-08-04 01:45:10 -06:00
Jason Merrill
3773a46b93 gcc.c (default_compilers, cpp-output): Pass -fpreprocessed.
* gcc.c (default_compilers, cpp-output): Pass -fpreprocessed.
	* toplev.c (documented_lang_options): Add -fpreprocessed.
	* cpplib.h (struct cpp_buffer): Add preprocessed.
	* cppinit.c (cpp_handle_option): Handle -fpreprocessed.
	(cpp_start_read): Don't expand macros or emit an initial #line
	directive if -fpreprocessed.

	* cpplib.h (struct cpp_buffer): Added manual_pop for
	better C++ tokenization.
	* cpplib.c (cpp_get_token): Return CPP_EOF if manual_pop.
	Also, support C++ tokenization for ->*, .*, <?, and >? operators.
	* c-common.c (cpp_token): Make non-static.

From-SVN: r28190
1999-07-20 15:13:01 -04:00
Alexandre Oliva
e67df273a1 gcc.texi: Update e-mail addresses and URLs to gcc.gnu.org.
* gcc.texi: Update e-mail addresses and URLs to gcc.gnu.org.
        Removed paragraph about compression of files and size limitation,
        duplicated in the FAQ.  Use gcc-patches for posting patches.
        * gcc.c (main): Updated URL with bug reporting instructions to
        gcc.gnu.org.  Removed e-mail address.
        * system.h (abort): Likewise.

From-SVN: r28151
1999-07-17 21:48:02 -06:00
Tom Tromey
8607048d69 gcc.c (main): Read user-specified specs files after computing additional startfile_prefixes.
h
        * gcc.c (main): Read user-specified specs files after computing
        additional startfile_prefixes.

From-SVN: r27742
1999-06-24 15:33:54 -06:00
Zack Weinberg
eeb183e9c7 cppspec.c: Insert -no-gcc into command line unless -gcc was given by user.
* cppspec.c: Insert -no-gcc into command line unless -gcc was
        given by user.
        * gcc.c (default_compilers): Define __GNUC__ and
        __GNUC_MINOR__ only if -no-gcc was not given.
        * objc/lang-specs.h: Likewise.
        * cpp.texi: Document -x and -std options; explain that -lang
        is no longer supported.  Minor related corrections.

From-SVN: r26990
1999-05-17 17:37:19 -06:00
Dave Brolley
54ff00f60b cppspec.c: Treat two non-option arguments as input and output file.
1999-05-10 18:21 -0400  Zack Weinberg  <zack@rabi.phys.columbia.edu>
	* cppspec.c: Treat two non-option arguments as input and
	output file.  Three or more non-option args is an error.
	Clean up.
	* gcc.c (default_compilers): Pass -$ to the preprocessor.
	* cp/lang-specs.h,ch/lang-specs.h,f/lang-specs.h,
	objc/lang-specs.h: Likewise.

From-SVN: r26870
1999-05-10 11:25:49 -04:00
Zack Weinberg
9ba051d33e gcc.c (default_compilers): Fix brace nesting bug.
1999-05-05 09:58 -0400  Zack Weinberg  <zack@rabi.columbia.edu>
	* gcc.c (default_compilers): Fix brace nesting bug.
	* objc/lang-specs.h: Use %i, not %g.mi, for the input file
	when processing an .mi file.

From-SVN: r26775
1999-05-05 07:02:04 +00:00
Zack Weinberg
2a611d21ac system.h: Always prototype abort.
1999-04-16 22:44 -0400  Zack Weinberg  <zack@rabi.columbia.edu>
	* system.h: Always prototype abort.  Prototype fatal.  Define
	abort to call fatal, not fprintf/exit.  Define a stub macro
	for trim_filename.
	* toplev.c: Define DIR_SEPARATOR.  (trim_filename): New
	function.
	* toplev.h: Prototype trim_filename, and #undef system.h's stub.
	* gcc.c, genattr.c, genattrtab.c, gencodes.c, genconfig.c,
	genemit.c, genextract.c, genflags.c, genopinit.c, genoutput.c,
	genpeep.c, genrecog.c: Make fatal non-static.
	* gcov.c, gengenrtl.c, protoize.c: #undef abort after
	including system.h.
	* config/i386/dgux.h, config/m68k/xm-amix.h: Remove stale code
	relating to abort.

From-SVN: r26511
1999-04-16 19:52:44 +00:00
Mark Elbrecht
509781a4d1 collect2.c (find_a_file): Use HAVE_DOS_BASED_FILE_SYSTEM in place of the DIR_SEPARATOR test.
* collect2.c (find_a_file): Use HAVE_DOS_BASED_FILE_SYSTEM in place
        of the DIR_SEPARATOR test.
        Consider any file starting with a drivename to be absolute.
        If the absolute filename test fails and EXECUTABLE_SUFFIX is
        defined, append EXECUTABLE_SUFFIX to the file and try again.
        * cppinit.c (base_name): Use HAVE_DOS_BASED_FILE_SYSTEM
        in place of __MSDOS__ and _WIN32.
        * cppfiles.c (simplify_pathname): Likewise.
        * gcc.c (IS_DIR_SEPARATOR): Define new macro. Returns true if a
        character is a directory separator.
        (find_a_file): Use it.
        (convert_filename): Likewise.
        (process_command): Likewise.
        (do_spec_1): Likewise.
        (is_directory): Likewise.
        (main): Likewise.
        * prefix.c (IS_DIR_SEPARATOR): Define. Tests whether a character is
        a directory separator.
        (translate_name): Use it.
        (update_path): Change DIR_SEPARATOR_2 to DIR_SEPARATOR. Fix
        warning in block where '/' is changed to DIR_SEPARATOR.
        * i386/xm-djgpp.h (DIR_SEPARATOR): Set to '/'.
        (DIR_SEPARATOR_2): New macro. Set to '\'.
        (HAVE_DOS_BASED_FILESYS): Define.
        * i386/xm-mingw32.h: Updated copyright. Set
        DIR_SEPARATOR_2 to '/'. Define HAVE_DOS_BASED_FILE_SYSTEM.
        * i386/xm-os2.h: Likewise.
        * winnt/xm-winnt.h: Likewise.
        * i386/xm-dos.h: Likewise.  Add copyright.

From-SVN: r26328
1999-04-09 22:27:16 -06:00
Zack Weinberg
507df93940 cppinit.c (install_predefs): Delete function.
1999-04-06 12:51 -0400  Zack Weinberg  <zack@rabi.columbia.edu>
	* cppinit.c (install_predefs): Delete function.
	(cpp_start_read): Don't call install_predefs.
	(cpp_handle_option): Remove case 'u' and all refs to
	opts->inhibit_predefs.
	(print_help): Don't mention -undef.
	(initialize_builtins): Define __HAVE_BUILTIN_SETJMP__, to
	match cccp.
	* cpplib.h (struct cpp_options): Remove inhibit_predefs
	member.
	* cccp.c (predefs): Delete variable.
	(main): Remove case 'u' in argument parse loop,
	'inhibit_predefs' variable, and the code block that would
	process CPP_PREDEFINES.
	(initialize_builtins): Don't define __OBJC__, the driver will
	do that.
	* gcc.c (default_compilers): Remove -undef from all specs that
	invoke a C preprocessor.
	* ch/lang-specs.h: Likewise.
	* cp/lang-specs.h: Likewise.
	* f/lang-specs.h: Likewise.
	* objc/lang-specs.h: Likewise.

From-SVN: r26212
1999-04-06 09:54:30 +00: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
Kaveh R. Ghazi
735396d963 Warning fixes:
* cccp.c (default_include): Initialize structure memebers.
        (pass_thru_directive): Change the type of 'keyword_length' to int.
        (main): Cast `bindtextdomain' and `textdomain' to (void).
        * collect2.c (main): Likewise.
        * cppmain.c (main): Likewise.
        * gcc.c (main): Likewise.
        * gcov.c (main): Likewise.
        * protoize.c (main): Likewise.
        * toplev.c (main): Likewise.

From-SVN: r25839
1999-03-18 07:29:10 +00:00
Mark Elbrecht
e41753123b * gcc.c (process_command): Dump link_command_spec too.
From-SVN: r25830
1999-03-17 14:51:18 -07:00
Kaveh R. Ghazi
878f32c33e gcc.c (print_file_name, [...]): Qualify a char* with the `const' keyword.
* gcc.c (print_file_name, print_prog_name, spec_machine,
        read_specs, set_spec, lookup_compiler, build_search_list,
        putenv_from_prefixes, find_a_file, record_temp_file,
        delete_if_ordinary, handle_braces, do_spec, do_spec_1, find_file,
        is_directory, validate_switches, used_arg, default_arg,
        pfatal_with_name, perror_with_name, pfatal_pexecute, fatal, error,
        notice, add_preprocessor_option, add_assembler_option,
        add_linker_option, process_command, execute,
        unused_prefix_warnings, clear_args, fatal_error,
        lang_specific_driver, user_specs, compiler, link_command_spec,
        option_map, translate_options, make_temp_file, temp_name,
        programname, path_prefix, machine_suffix, just_machine_suffix,
        gcc_exec_prefix, standard_exec_prefix, standard_exec_prefix_1,
        md_exec_prefix, md_startfile_prefix, md_startfile_prefix_1,
        standard_startfile_prefix, standard_startfile_prefix_1,
        standard_startfile_prefix_2, tooldir_base_prefix, tooldir_prefix,
        multilib_dir, temp_filename, temp_file, command, switchstr,
        infile, outfiles, input_filename, input_basename, input_suffix,
        check_live_switch, main): Qualify a char* with the `const' keyword.

From-SVN: r25676
1999-03-10 20:32:13 +00:00
Richard Henderson
056cd57251 gcc.c (default_compilers): Define __FAST_MATH__ when appropriate.
* gcc.c (default_compilers): Define __FAST_MATH__ when appropriate.
        * cp/lang-specs.h: Likewise.
        * f/lang-specs.h: Likewise.
        * objc/lang-specs.h: Likewise.

From-SVN: r25445
1999-02-25 10:50:07 -08:00
Mumit Khan
87e690e264 * gcc.c (convert_filename): Handle null filename argument.
From-SVN: r25115
1999-02-09 12:48:40 -07:00
Jeffrey A Law
8d31fdf4ba README.g77, [...]: Update email addresses.
* README.g77, gcc.c, gcc.texi: Update email addresses.
        * invoke.texi system.h: Likewise.

From-SVN: r25064
1999-02-06 10:20:33 -07:00
Zack Weinberg
be163a70f5 flags.h: Declare flag_no_ident.
1999-01-31 17:52 -0500  Zack Weinberg  <zack@midnite.ec.rhno.columbia.edu>
	* flags.h: Declare flag_no_ident.
	* toplev.c: Define flag_no_ident.  Process -f(no-)ident here.
	* c-decl.c: Don't define flag_no_ident.  Don't process
          -f(no-)ident switches here.
	* ch/decl.c: Likewise.
	* cp/decl2.c: Likewise.
	* c-tree.h: Don't declare flag_no_ident.
	* ch/ch-tree.h: Likewise.
	* cp/cp-tree.h: Likewise.
	* config/elfos.h (ASM_FILE_END): Output final .ident directive
          only if !flag_no_ident.
	* config/ptx4.h: Likewise.
	* config/svr4.h: Likewise.
	* config/alpha/elf.h: Likewise.
	* config/arm/linux-elf.h: Likewise.
	* config/i386/sco5.h: Likewise.
	* config/i860/fx2800.h: Likewise.
	* config/mips/gnu.h: Likewise.
	* config/i386/osfrose.h: Likewise.
	* gcc.c (C specs): Map -Qn to -fno-ident.
	* ch/lang-specs.h: Likewise.
	* cp/lang-specs.h: Likewise.
	* f/lang-specs.h: Likewise.
	* objc/lang-specs.h: Likewise.
	* java/lang-specs.h: Likewise.

From-SVN: r24943
1999-01-31 17:46:42 +00:00
Jeffrey A Law
d9b5343057 cccp.c (main): Only call setlocale (LC_MESSAGES, ...) if LC_MESSAGES is defined.
* cccp.c (main): Only call setlocale (LC_MESSAGES, ...) if LC_MESSAGES
        is defined.
        * collect2.c (main): Likewise.
        * cppmain.c (main): Likewise.
        * gcc.c (main): Likewise.
        * gcov.c (main): Likewise.
        * protoize.c (main): Likewise.
        * toplev.c (main): Likewise.

From-SVN: r24923
1999-01-30 07:34:11 -07:00
Jeffrey A Law
ab87f8c8d1 Merge in gcc2 snapshot 19980929. See gcc/ChangeLog and gcc/FSFChangeLog for
details.

From-SVN: r24879
1999-01-26 18:43:17 -07:00
Richard Henderson
09d83d2522 cppp.c (xrealloc): Fix typo last change.
* cppp.c (xrealloc): Fix typo last change.
        * cppalloc.c, gcc.c, genattr.c, genattrtab.c, gencodes.c: Likewise.
        * genconfig.c, genemit.c, genextract.c, genflags.c: Likewise.
        * genopinit.c, genoutput.c, genpeep.c, genrecog.c: Likewise.

From-SVN: r24823
1999-01-22 03:52:05 -08:00
Richard Henderson
470b68c0a9 cccp.c (xrealloc): Call malloc given a NULL old pointer.
* cccp.c (xrealloc): Call malloc given a NULL old pointer.
        * collect2.c, cppalloc.c, gcc.c, genattr.c, genattrtab.c: Likewise.
        * gencodes.c, genconfig.c, genemit.c, genextract.c: Likewise.
        * genflags.c, genopinit.c, genoutput.c, genpeep.c: Likewise.
        * genrecog.c, mips-tfile.c, protoize.c: Likewise.

From-SVN: r24806
1999-01-21 09:47:36 -08:00
Marc Espie
cbc546653d * gcc.c: (do_spec_1): Fix obvious typo.
From-SVN: r24705
1999-01-16 13:53:24 -07:00
Kaveh R. Ghazi
ed35cf6e8b gcc.c (xstrerror): Renamed from my_strerror.
* gcc.c (xstrerror): Renamed from my_strerror.  All callers
        changed.  Remove prototype since we get that from libiberty.h.
        * protoize.c (xstrerror): Likewise.

From-SVN: r24605
1999-01-09 20:59:12 +00:00
Kaveh R. Ghazi
22d9f2cfb4 Warning fixes:
* gcc.c (read_specs): Ensure format specifiers match their arguments.

From-SVN: r24604
1999-01-09 20:28:30 +00:00
Jeff Law
44ba0e9336 Fix copyright dates.
From-SVN: r24530
1999-01-06 12:54:35 -07:00
Kaveh R. Ghazi
460ee1120c Makefile.in (gcc.o, [...]): Depend on prefix.h.
* Makefile.in (gcc.o, prefix.o, cccp.o, cpplib.o): Depend on prefix.h.
        * cccp.c: Include prefix.h, don't prototype prefix.c functions.
        (new_include_prefix): Constify char* parameters.
        * cppfiles.c (read_name_map): Likewise.
        (append_include_chain): Likewise.  Also, use a writable char* copy
        of parameter `dir' which we then modify, rather than using the
        parameter itself to store the new writable string.
        (remap_filename): Constify some variables.  Also, use a writable
        char* to store an allocated string which we will be modifying.
        * cpplib.c: Include prefix.h, don't prototype prefix.c functions.
        (cpp_start_read): Constify variable `str'.
        * cpplib.h (append_include_chain): Constify a char* parameter.
        * gcc.c Include prefix.h, don't prototype prefix.c functions.
        (add_prefix, save_string): Constify char* parameters.
        (fatal, error): Add ATTRIBUTE_PRINTF_1 to prototypes.
        * prefix.c: Include prefix.h.
        (get_key_value, translate_name, save_string, update_path,
        set_std_prefix): Constify various char* parameters and variables.
        (save_string): Use xmalloc, not malloc.
        (translate_name): Use a writable temporary variable to create and
        modify a string before setting it to a const char*.
        * prefix.h: New file to prototype functions exported from prefix.c.

From-SVN: r24498
1999-01-05 19:11:22 +00:00
Stan Cox
6405c0eca8 * gcc.c (execute): Enable -pipe with win32.
From-SVN: r24414
1998-12-24 10:30:08 +00:00
Manfred Hollstein
276140faae cccp.c: Do not #include <sys/stat.h> here; this is already done by "system.h".
�
	* cccp.c: Do not #include <sys/stat.h> here; this is already done
	by "system.h".
	* collect2.c: Likewise.
	* cpplib.h: Likewise.
	* gcc.c: Likewise.
	* gcov.c: Likewise.
	* getpwd.c: Likewise.
	* protoize.c: Likewise.
	* toplev.c: Likewise.

From-SVN: r24263
1998-12-11 08:32:49 +00:00
Richard Henderson
6271b19158 c-decl.c (flag_isoc9x): Default off.
* c-decl.c (flag_isoc9x): Default off.
        (c_decode_option): Kill -std=gnu, add -std=gnu89 and -std=gnu9x.
        * cccp.c (print_help, main): Likewise.
        * gcc.c (default_compilers): Update for -std=gnu*.

From-SVN: r24186
1998-12-08 02:26:36 -08:00
Dave Brolley
93447205e5 [multiple changes]
Mon Dec  7 15:38:25 1998  Dave Brolley  <brolley@cygnus.com>
	* gcc.c (default_compilers): Fix typo in USE_CPPLIB spec for cc1.
Mon Dec  7 15:38:25 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * c-aux-info.c (concat): Wrap function definition in !USE_CPPLIB.
        * cppalloc.c: Move function `xcalloc' from cpplib.c to here.
        * cpplib.c: Move function `xcalloc' from here to cppalloc.c.

From-SVN: r24152
1998-12-07 07:42:21 -05:00
Ulrich Drepper
6f4d72224e c-common.c (declare_function_name): Declare predefinied variable `__func__'.
* c-common.c (declare_function_name): Declare predefinied variable
        `__func__'.
        * c-decl.c (flag_isoc9x): Set to 1 by default.
        (c_decode_option): Handle -std= option.  Remove -flang-isoc9x.
        (grokdeclarator): Always emit warning about implicit int for ISO C 9x.
        * c-parse.in: Allow constructors in ISO C 9x.
        Rewrite designator list handling.
        Allow [*] parameters.
        Don't warn about comma at end of enum definition for ISO C 9x.
        * cccp.c (c9x): New variable.
        (rest_extension): New variable.
        (print_help): Document new -std= option.
        (main): Recognize -std= option.  Set c9x appropriately.
        (create_definition): Recognize ISO C 9x vararg macros.
        * gcc.c (default_compilers): Adjust specs for -std options.
        (option_map): Add --std.
        (display_help): Document -std.
        * toplev.c (documented_lang_options): Add -std and remove
        -flang-isoc9x.
        * c-lex.c (yylex): Recognize hex FP constants and call REAL_VALUE_ATOF
        or REAL_VALUE_HTOF based on base of the constants.
        * fold-const.c (real_hex_to_f): New function.  Replacement function
        for hex FP conversion if REAL_ARITHMETIC is not defined.
        * real.c (asctoeg): Add handling of hex FP constants.
        * real.h: Define REAL_VALUE_HTOF if necessary using ereal_atof or
        real_hex_to_f.

Co-Authored-By: Richard Henderson <rth@cygnus.com>
Co-Authored-By: Stephen L Moshier <moshier@world.std.com>

From-SVN: r24049
1998-12-01 13:05:17 -08:00
Kaveh R. Ghazi
2778b98d90 system.h: Include libiberty.h.
* system.h: Include libiberty.h.
        * c-aux-info.c: Remove prototypes for concat/concat3.  Change
        function `concat' from fixed parameters to variable parameters,
        as is done in libiberty.  All callers of concat/concat3
        changed to use the new `concat' with variable args.
        * cccp.c: Remove things made redundant by libiberty.h and/or
        conform to libiberty standards.
        * cexp.y: Likewise.
        * collect2.c: Likewise.
        * config/1750a/1750a.h: Likewise.
        * cppalloc.c: Likewise.
        * cppexp.c: Likewise.
        * cppfiles.c: Likewise.
        * cpphash.c: Likewise.
        * cpplib.c: Likewise.
        * dyn-string.c: Likewise.
        * fix-header.c: Likewise.
        * gcc.c: Likewise.
        * gcov.c: Likewise.
        * genattr.c: Likewise.
        * genattrtab.c: Likewise.
        * gencheck.c: Likewise.
        * gencodes.c: Likewise.
        * genconfig.c: Likewise.
        * genemit.c: Likewise.
        * genextract.c: Likewise.
        * genflags.c: Likewise.
        * gengenrtl.c: Likewise.
        * genopinit.c: Likewise.
        * genoutput.c: Likewise.
        * genpeep.c: Likewise.
        * genrecog.c: Likewise.
        * getpwd.c: Likewise.
        * halfpic.c: Likewise.
        * hash.c: Likewise.
        * mips-tdump.c: Likewise.  Wrap malloc/realloc/calloc prototypes
        in NEED_DECLARATION_* macros.
        * mips-tfile.c: Remove things made redundant by libiberty.h and/or
        conform to libiberty standards.
        (fatal): Fix const-ification of variable `format' in
        !ANSI_PROTOTYPES case.
        * prefix.c: Remove things made redundant by libiberty.h and/or
        conform to libiberty standards.
        * print-rtl.c: Rename variable `spaces' to `xspaces' to avoid
        conflicting with function `spaces' from libiberty.
        * profile.c: Remove things made redundant by libiberty.h and/or
        conform to libiberty standards.
        * protoize.c: Likewise.
        * rtl.h: Likewise.
        * scan.h: Likewise.
        * tlink.c: Likewise.
        * toplev.c: Likewise.
        * toplev.h: Likewise.
        * tree.h: Likewise.

From-SVN: r23931
1998-11-27 10:09:17 +00:00
Tom Tromey
36696297f1 * gcc.c (option_map): Recognize --output-class-directory.
From-SVN: r23886
1998-11-25 22:46:28 +00:00
Zack Weinberg
b12da25e3e gcc.c: Split out Objective-C specs to...
* gcc.c: Split out Objective-C specs to...
        * objc/lang-specs.h: here. (New file.) Make the specs cpplib
        aware.
        * c-lex.c (init_parse): Always initialize the filename global.
        * objc/objc-act.c (lang_init): Always call check_newline at
        beginning of file.

From-SVN: r23850
1998-11-25 01:54:10 -07:00
Melissa O'Neill
9855b854a4 cccp.c (S_ISREG, S_ISDIR): Delete defines.
* cccp.c (S_ISREG, S_ISDIR): Delete defines.
        * cpplib.c, gcc.c: Likewise.
        * system.h (S_ISREG, S_ISDIR): Define if not already defined.

From-SVN: r23785
1998-11-23 02:20:35 -07:00
Kaveh R. Ghazi
e9831ca0d0 configure.in: Don't do AC_CHECK_HEADERS(wait.h sys/wait.h).
* configure.in: Don't do AC_CHECK_HEADERS(wait.h sys/wait.h).
        Instead call AC_HEADER_SYS_WAIT.
        * collect2.c: Don't provide defaults for sys/wait.h macros.
        * gcc.c: Likewise.
        * protoize.c: Likewise.  Also, don't include sys/wait.h.
        * system.h: Include sys/wait.h and provide macro defaults.

From-SVN: r23712
1998-11-19 10:13:46 +00:00
Geoffrey Noer
cae21ae8a9 Jumbo patch from Geoff Noer to rename CYGWIN32 to CYGWIN.
From-SVN: r23622
1998-11-12 11:37:47 -08:00
Kaveh R. Ghazi
5148a72b33 gansidecl.h: Prepend a "G" to the macro wrapping this file (to distinguish it from the macro...
* gansidecl.h: Prepend a "G" to the macro wrapping this file
        (to distinguish it from the macro wrapping ansidecl.h.)
        Include libiberty's ansidecl.h.  Remove all redundant definitions.
        Define the PROTO() style macros in terms of the PARAMS() ones.
        * calls.c (emit_library_call): Switch on ANSI_PROTOTYPES, not
        __STDC__, when deciding whether to use ANSI variable args.
        (emit_library_call_value): Likewise.
        * cccp.c (error): Likewise.
        (warning): Likewise.
        (error_with_line): Likewise.
        (warning_with_line): Likewise.
        (pedwarn): Likewise.
        (pedwarn_with_line): Likewise.
        (pedwarn_with_file_and_line): Likewise.
        (fatal): Likewise.
        * cexp.y (error): Likewise.
        (pedwarn): Likewise.
        (warning): Likewise.
        * collect2.c (fatal_perror): Likewise.
        (fatal): Likewise.
        (error): Likewise.
        * combine.c (gen_rtx_combine): Likewise.
        * cpperror.c (cpp_message): Likewise.
        (cpp_fatal): Likewise.
        * cpplib.c (cpp_error): Likewise.
        (cpp_warning): Likewise.
        (cpp_pedwarn): Likewise.
        (cpp_error_with_line): Likewise.
        (cpp_warning_with_line): Likewise.
        (cpp_pedwarn_with_line): Likewise.
        (cpp_pedwarn_with_file_and_line): Likewise.
        * cpplib.h: Don't define PARAMS() macro.
        * demangle.h: Likewise.
        * doprint.c (checkit): Switch on ANSI_PROTOTYPES, not __STDC__,
        when deciding whether to use ANSI variable args.
        * emit-rtl.c (gen_rtx): Likewise.
        (gen_rtvec): Likewise.
        * final.c (asm_fprintf): Likewise.
        * fix-header.c (cpp_message): Likewise.
        (fatal): Likewise.
        (cpp_fatal): Likewise.
        * gcc.c (concat): Likewise.
        (fatal): Likewise.
        (error): Likewise.
        * genattr.c (fatal): Likewise.
        * genattrtab.c (attr_rtx): Likewise.
        (attr_printf): Likewise.
        (fatal): Likewise.
        * gencodes.c (fatal): Likewise.
        * genconfig.c (fatal): Likewise.
        * genemit.c (fatal): Likewise.
        * genextract.c (fatal): Likewise.
        * genflags.c (fatal): Likewise.
        * genopinit.c (fatal): Likewise.
        * genoutput.c (fatal): Likewise.
        (error): Likewise.
        * genpeep.c (fatal): Likewise.
        * genrecog.c (fatal): Likewise.
        * halfpic.h: Switch on ANSI_PROTOTYPES, not __STDC__, when
        deciding whether to declare `tree_node' and `rtx_def'.
        * hash.h: Don't define stuff we get from gansidecl.h.
        * mips-tfile.c: Likewise.  Define __proto() in terms of PARAMS().
        (fatal): Switch on ANSI_PROTOTYPES, not __STDC__, when deciding
        whether to use ANSI variable args.
        (error): Likewise.
        * prefix.c (concat): Likewise.
        * scan.h: Likewise.
        * system.h: Likewise.
        * toplev.c (error_with_file_and_line): Likewise.
        (error_with_decl): Likewise.
        (error_for_asm): Likewise.
        (error): Likewise.
        (fatal): Likewise.
        (warning_with_file_and_line): Likewise.
        (warning_with_decl): Likewise.
        (warning_for_asm): Likewise.
        (warning): Likewise.
        (pedwarn): Likewise.
        (pedwarn_with_decl): Likewise.
        (pedwarn_with_file_and_line): Likewise.
        (sorry): Likewise.
        (really_sorry): Likewise.
        * toplev.h: Switch on ANSI_PROTOTYPES, not __STDC__, when deciding
        whether to declare `tree_node' and `rtx_def'.
        * tree.c (build): Switch on ANSI_PROTOTYPES, not __STDC__, when
        deciding whether to use ANSI variable args.
        (build_nt): Likewise.
        (build_parse_node): Likewise.

From-SVN: r23577
1998-11-08 15:10:24 +00:00
Kaveh R. Ghazi
0056a9b5cf configure.in (host_xm_file, [...]): Arrange to include gansidecl.h in {ht}config.h & tm.h just before the config/...
* configure.in (host_xm_file, build_xm_file, xm_file, tm_file):
        Arrange to include gansidecl.h in {ht}config.h & tm.h just
        before the config/ directory headers.
        (tm_file_list, host_xm_file_list, build_xm_file_list): Handle
        gansidecl.h in the list of dependencies.
        * Makefile.in (RTL_BASE_H): Don't depend on gansidecl.h.
        (TREE_H, DEMANGLE_H, RECOG_H, REGS_H, libgcc2.a, stmp-multilib,
        mbchar.o, collect2.o, pexecute.o, vfprintf.o, splay-tree.o, gcc.o,
        gencheck.o, choose-temp.o, mkstemp.o, mkstemp.o, prefix.o,
        dyn-string.o, cexp.o, cccp.o, cppmain.o, cpplib.o, cpperror.o,
        cppexp.o, cppfiles.o, cpphash.o, cppalloc.o, scan-decls.o):
        Likewise.
        * cccp.c: Don't include gansidecl.h.
        * cexp.y: Likewise.
        * collect2.c: Likewise.
        * config/c4x/c4x.c: Likewise.
        * config/v850/v850.h: Likewise.
        * cppalloc.c: Likewise.
        * cpperror.c: Likewise.
        * cppexp.c: Likewise.
        * cppfiles.c: Likewise.
        * cpphash.c: Likewise.
        * cpplib.c: Likewise.
        * cppmain.c: Likewise.
        * cppulp.c: Likewise.
        * demangle.h: Likewise.
        * doprint.c: Likewise.
        * dyn-string.c: Likewise.
        * eh-common.h: Likewise.
        * fix-header.c: Likewise.
        * frame.c: Likewise.
        * gcc.c: Likewise.
        * gcov.c: Likewise.
        * gen-protos.c: Likewise.
        * gencheck.c: Likewise.
        * halfpic.h: Likewise.
        * hash.c: Likewise.
        * machmode.h: Likewise.
        * mbchar.c: Likewise.
        * prefix.c: Likewise.
        * protoize.c: Likewise.
        * recog.h: Likewise.
        * rtl.h: Likewise.
        * scan-decls.c: Likewise.
        * tree.h: Likewise.
        * varray.h: Likewise.

From-SVN: r23558
1998-11-07 13:00:46 +00:00
Kaveh R. Ghazi
c375c43b73 configure.in: Call AC_FUNC_VFORK.
* configure.in: Call AC_FUNC_VFORK.
        * collect2.c: Define VFORK_STRING as a printable string for
        error messages (either "vfork" or "fork".)  If HAVE_VFORK_H is
        defined, include vfork.h.  If VMS is defined, define vfork()
        appropriately.  Remove vfork check on USG, we're using autoconf.
        (collect_execute): Pass VFORK_STRING to fatal_perror instead of
        checking locally what string to pass.
        (scan_prog_file): Likewise.
        (scan_libraries): Likewise.
        * gcc.c: Remove vfork check on USG, we're using autoconf.
        Besides, no calls to vfork/fork occur in this file.
        * protoize.c: Likewise.

From-SVN: r23498
1998-11-02 07:20:48 +00:00
Richard Henderson
19283265ad Makefile.in (cc1): Put C_OBJS, and thence @extra_c_objs@ last.
* Makefile.in (cc1): Put C_OBJS, and thence @extra_c_objs@ last.
        (LIBCPP_OBJS): New.  Add cppulp.o.
        (cppmain, fix-header): Depend on and use libcpp.a.
        * configure.in (extra_c_objs, extra_cxx_objs): Use libcpp.a instead
        of the individual object files.
        * objc/Make-lang.in (cc1obj): Put OBJC_OBJS, and thence @extra_c_objs@,
        last.
        * cccp.c (user_label_prefix): New.
        (main): Set it off -f*leading-underscore.
        (special_symbol): Use it.
        * cpplib.c (special_symbol): Likewise.
        (cpp_handle_option): Handle -f*leading-underscore.
        * cppulp.c: New file.
        * output.h (user_label_prefix): Declare it.
        * dwarf2out.c (ASM_NAME_TO_STRING): Prepend user_label_prefix.
        * toplev.c (f_options, main): Handle -f*leading-underscore.
        * defaults.h (ASM_OUTPUT_LABELREF): Use asm_fprintf instead of
        referencing USER_LABEL_PREFIX directly.
        * config/nextstep.h (ASM_OUTPUT_LABELREF): Likewise.
        * m32r/m32r.h (ASM_OUTPUT_LABELREF): Likewise.
        * final.c (asm_fprintf): Use user_label_prefix instead.
        * arm/thumb.c (thumb_print_operand): Likewise.
        * gcc.c (default_compilers): Pass -f*leading-underscore on to
        cpp wherever appropriate.

From-SVN: r23415
1998-10-28 14:31:06 -08:00
Kaveh R. Ghazi
829245be1b Warning fixes:
* gcc.c (EXTRA_SPECS, extra_specs): Introduce an intermediate
        structure which has exactly the members provided by EXTRA_SPECS.
        Xmalloc() the real `extra_specs', and initialize it from this
        intermediate structure.
        * alpha.h (EXTRA_SPECS): Revert change for missing initializers.
        * mips.h  (EXTRA_SPECS): Likewise.
        * sparc.h (EXTRA_SPECS): Likewise.

From-SVN: r23406
1998-10-28 18:00:53 +00:00
Tom Tromey
645278bcac * gcc.c (option_map): Added --classpath and --CLASSPATH.
From-SVN: r23203
1998-10-20 17:02:48 +00:00
Kaveh R. Ghazi
bf94d1ecc7 Add ATTRIBUTE_NORETURN in a bunch of places:
* cppalloc.c (memory_full): Mark function prototype with
	ATTRIBUTE_NORETURN.
	* demangle.h (collect_exit): Likewise.
	* fix-header.c (v_fatal, fatal): Likewise.
	* gcc.c (pfatal_with_name, pfatal_pexecute, fatal, fancy_abort):
	Likewise.
	* gcov.c (print_usage): Likewise.
	* genattr.c (fatal, fancy_abort): Likewise.
	* genattrtab.c (fatal, fancy_abort): Likewise.
	* gencodes.c (fatal, fancy_abort): Likewise.
	* genconfig.c (fatal, fancy_abort): Likewise.
	* genemit.c (fatal, fancy_abort): Likewise.
	* genextract.c (fatal, fancy_abort): Likewise.
	* genflags.c (fatal, fancy_abort): Likewise.
	* genopinit.c (fatal, fancy_abort): Likewise.
	* genoutput.c (fatal, fancy_abort): Likewise.
	* genpeep.c (fatal, fancy_abort): Likewise.
	* genrecog.c (fatal, fancy_abort): Likewise.
	* libgcc2.c (__eprintf, __default_terminate, __sjthrow,
	__sjpopnthrow, __throw): Likewise.
	* objc/objc-act.c (objc_fatal): Likewise.
	* protoize.c (usage, aux_info_corrupted,
	declare_source_confusing): Likewise.
	* rtl.c (dump_and_abort): Likewise.
	* rtl.h (sets_cc0_p): Likewise.
	* toplev.c (float_signal, pipe_closed): Likewise.

From-SVN: r23084
1998-10-14 10:37:09 +00:00
Kaveh R. Ghazi
e51712db0d Warning fixes:
* Makefile.in (sched.o): Depend on recog.h.
        * alias.c (REG_BASE_VALUE): Cast the result of REGNO() macro to
        (unsigned) when comparing against one.
        (find_base_value): Likewise.
        (record_base_value): Cast variable `regno' to (unsigned) when
        comparing against one.  Cast the result of REGNO() macro to
        (unsigned) when comparing against one.
        (memrefs_conflict_p): Change type of variables `r_x' and `r_y'  to
        unsigned.
        (init_alias_analysis): Add unsigned variable `ui'.  Use it as loop
        variable where an unsigned index is needed.
        * caller-save.c (init_caller_save): Cast `-1' to (enum insn_code)
        before comparing against one.
        * collect2.c: Add prototypes for functions `error', `fatal' and
        `fatal_perror'.  Make these functions take variable arguments
        instead of faking it with a fixed number of args.
        (write_c_file_stat): Cast the argument of ctype macro to (unsigned
        char).
        * combine.c (can_combine_p): Mark parameter `pred' with
        ATTRIBUTE_UNUSED.
        (find_split_point): Cast variable `src' to (unsigned
        HOST_WIDE_INT) when comparing against one.
        HOST_WIDE_INT) when comparing against one.
        (simplify_rtx): Cast 1 to (unsigned HOST_WIDE_INT) in shift.
        (simplify_logical): Likewise.
        (force_to_mode): Cast result of INTVAL() macro to (unsigned
        HOST_WIDE_INT) when comparing against one.  Cast 1 to (unsigned
        HOST_WIDE_INT) in shift.
        (simplify_and_const_int): Cast result of INTVAL() macro to
        `unsigned HOST_WIDE_INT' when comparing against one.
        (merge_outer_ops): Cast variable const0 to `unsigned
        HOST_WIDE_INT' when comparing against the result of
        GET_MODE_MASK() macro.
        (simplify_comparison): Likewise for variable `c0'.  Cast variable
        `const_op' to `unsigned HOST_WIDE_INT' when comparing against
        one.  Cast `1' to `unsigned HOST_WIDE_INT' in shift.  Cast the
        result of `GET_MODE_MASK()/2' to `HOST_WIDE_INT' when comparing
        against one.  Cast `1' to `unsigned HOST_WIDE_INT' in shift.  Cast
        result of INTVAL() macro to `unsigned HOST_WIDE_INT' when
        comparing against one.
        (distribute_notes): Wrap variable `cc0_setter' in macro `HAVE_cc0'.
        config/mips/mips.c (gen_int_relational): Cast result of INTVAL()
        macro to `unsigned HOST_WIDE_INT' when comparing against one.
        (output_block_move): Cast `sizeof' expression to (int) when
        comparing against one.
        (function_arg): Cast BITS_PER_WORD to `unsigned' when comparing
        against one.
        (save_restore_insns): Cast `base_offset' to `long' to match format
        specifier in fprintf.
        * config/mips/mips.h (Pmode): Cast the result of `Pmode' macro
        to `enum machine_mode'.
        * flow.c (life_analysis_1): Remove unused variable `insn'.
        * gcc.c (translate_options): Move variables `j' and `k' into the
        scope in which they are used.  Change their types to `size_t'.
        (set_spec): Cast the argument of ctype macro to `unsigned char'.
        (read_specs): Likewise.
        (process_command): Cast `sizeof' to (int) when comparing against one.
        (do_spec_1): Cast the argument of ctype macro to `unsigned char'.
        (handle_braces): Cast both sides of `==' expression to `long' to
        ensure sign matching.
        (main): Cast variable `i' to `int' when comparing against one.
        * gcov-io.h (__fetch_long): Change type of parameter `bytes' from
        int to size_t.  Cast variable `i' to size_t when comparing against
        one.
        * genattrtab.c (convert_set_attr_alternative): Remove unused
        parameter `insn_code'.  All callers changed.
        (convert_set_attr): Likewise.
        * genrecog.c (add_to_sequence): Cast result of XVECLEN() macro to
        size_t when comparing against one.  Likewise for variable `len'.
        * global.c (global_alloc): Cast variable `max_regno' to size_t
        when comparing against one.  Likewise for variable `max_allocno'.
        * jump.c (sets_cc0_p): Mark parameter `x' with ATTRIBUTE_UNUSED.
        * local-alloc.c (validate_equiv_mem_from_store): Mark parameter
        `set' with ATTRIBUTE_UNUSED.
        (find_free_reg): Cast `sizeof' expression to (int) when comparing
        against one.
        * loop.c (count_loop_regs_set): Remove unused variable `dest'.
        (strength_reduce): Mark parameter `bct_p' with ATTRIBUTE_UNUSED.
        (get_condition): Cast variable `const_val' to `unsigned
        HOST_WIDE_INT' when comparing against one.  Cast unsigned
        expression to HOST_WIDE_INT when comparing against one.
        (insert_loop_mem): Mark parameter `data' with ATTRIBUTE_UNUSED.
        (load_mems_and_recount_loop_regs_set): Cast variable `nregs' to
        `unsigned' when comparing against one.
        * protoize.c (is_id_char): Change type of parameter `ch' to
        unsigned char.
        (munge_compile_params): Cast argument of ctype macro to (const
        unsigned char).
        (process_aux_info_file): Cast variable `aux_info_size' to int when
        comparing against one.
        (forward_to_next_token_char): Cast argument of ctype macro to
        `const unsigned char'.
        (edit_formals_lists): Likewise.
        (find_rightmost_formals_list): Likewise.
        (add_local_decl): Likewise.
        (add_global_decls): Likewise.
        (edit_fn_definition): Likewise.
        (do_cleaning): Likewise.
        (scan_for_missed_items): Likewise.
        (edit_file): Cast variable `orig_size' to (int) when comparing
        against one.
        (main): Cast argument of ctype macro to `const unsigned char'.
        * recog.c (const_int_operand): Mark parameter `mode' with
        ATTRIBUTE_UNUSED.
        * regclass.c (record_reg_classes): Change type of variable `c' to
        `unsigned char'.  Cast `char' array index to `unsigned char'.
        * reload.c (push_secondary_reload): Cast argument to
        REG_CLASS_FROM_LETTER() macro to `unsigned char'.
        * reload1.c (calculate_needs): Cast `char' array index to
        `unsigned char'.
        (set_label_offsets): Change type of variable `i' to unsigned int.
        Cast result of XVECLEN() macro to unsigned when comparing against
        one.
        (mark_not_eliminable): Change type of variable `i' to unsigned.
        (order_regs_for_reload): Likewise.  Cast `max_regno' to unsigned
        when comparing against one.
        (reload_as_needed): Cast macro NUM_ELIMINABLE_REGS to (int) when
        comparing against one.
        (choose_reload_regs): Hide unused label `fail'.
        (reload_cse_simplify_operands): Cast `char' array index to
        `unsigned char'.
        (reload_combine_note_store): Mark parameter `set' with
        ATTRIBUTE_UNUSED.  Cast UNITS_PER_WORD to unsigned when comparing
        against one.
        (reload_cse_move2add): Remove unused variable `src2'.
        * sched.c: Include recog.h.
        (sched_note_set): Remove unused parameter `b'.  All callers
        changed.
        (split_hard_reg_notes): Likewise for parameter `orig_insn'.
        (blockage_range): Cast result of UNIT_BLOCKED() macro to (int)
        when comparing against one.
        * stupid.c (stupid_find_reg): Mark parameter `changes_size' with
        ATTRIBUTE_UNUSED.  Cast `sizeof' expression to (int) when
        comparing against one.
        * unroll.c (precondition_loop_p): Remove unused parameter
        `loop_end'.  All callers changed.

From-SVN: r23079
1998-10-14 09:02:55 +00:00
Graham Stott
2a92c071f8 flow.c (print_rtl_with_bb): Changed type of in_bb_p to match use.
Fri Oct  9 16:03:19 1998  Graham  <grahams@rcp.co.uk>
        * flow.c (print_rtl_with_bb): Changed type of in_bb_p to match use.
        * gcc.c (add_preprocessor_option): Correct typo when allocating
        memory, sizeof() argument had one too many `*'.
        (add_assembler_option): Likewise.
        (add_linker_option): Likewise.
        * gcov.c (output_data): Likewise.
        * local-alloc.c (memref_used_between_p): Likewise.
        (update_equiv_regs): Likewise.
        * loop.c (strength_reduce): Likewise.
        * reg-stack.c (record_asm_reg_life): Likewise.
        (subst_asm_stack_reg): Likewise.
        * reorg.c (dbr_schedule): Likewise.

From-SVN: r22964
1998-10-09 09:08:51 -07:00
Alexandre Oliva
ab339d62c0 configure.in: new flags --with-ld and --with-as...
* configure.in: new flags --with-ld and --with-as, equivalent
	to setting LD and AS environment variables.  Test whether
	specified arguments are GNU commands, and report them with
	checking messages.  Use the specified AS for configure
	tests too.
	* configure: ditto
	* acconfig.h: add DEFAULT_ASSEMBLER and DEFAULT_LINKER
	* config.in: ditto
	* gcc.c (find_a_file): when looking for `as' and `ld', return
	the DEFAULT program if it exists
	* collect2.c (main): use DEFAULT_LINKER if it exists
	* gcc.c (find_a_file): the test for existence of a full
	pathname was reversed

From-SVN: r22629
1998-09-28 15:52:01 +00:00
Jeff Law
2325c774f8 Use GET_ENV_PATH_LIST for GCC_EXEC_PREFIX too. My goof, not Felix's.
From-SVN: r22513
1998-09-20 19:00:21 -06:00
Felix Lee
b2a1e45827 c-lex.c (init_lex): Use getenv ("LANG"), not GET_ENVIRONMENT ().
* c-lex.c (init_lex): Use getenv ("LANG"), not GET_ENVIRONMENT ().
        * cccp.c (main): Likewise.
        * gcc.c (process_command): Similarly for "GCC_EXEC_PREFIX".
        * cccp.c, collect2.c, cpplib.c, gcc.c, config/i386/xm-cygwin32.h:
        Rename GET_ENVIRONMENT to GET_ENV_PATH_LIST, and fix some
        macro-use bugs.

From-SVN: r22511
1998-09-20 18:56:50 -06:00
Per Bothner
7e2231e759 Makefile.in (LIBS): Link in libiberty.a.
* Makefile.in (LIBS):  Link in libiberty.a.
        * c-common.c, gcc.c, toplev.c:  Repalce (some) bcopy calls by memcpy.

From-SVN: r22508
1998-09-20 17:54:10 -06:00
Tom Tromey
15c5edb921 gcc.c (do_spec_1): [case 'o'] Account for lang_specific_extra_outfiles.
* gcc.c (do_spec_1): [case 'o'] Account for
        lang_specific_extra_outfiles.
        (main): Correctly clear all slots in outfiles for
        lang_specific_extra_outfiles.  Set input_file_number before
        calling lang_specific_pre_link.

From-SVN: r22234
1998-09-04 12:58:40 +00:00
Kaveh R. Ghazi
789f983ab1 system.h: Include stdarg.h/varargs.h...
* system.h: Include stdarg.h/varargs.h, make sure they are ordered
        correctly with regards to stdio.h.
        * calls.c: Remove stdarg.h/varargs.h.
        * cccp.c: Likewise.
        * cexp.y: Likewise.
        * combine.c: Likewise.
        * cpperror.c: Likewise.
        * cpplib.c: Likewise.
        * cpplib.h: Likewise.
        * doprint.c: Likewise.
        * emit-rtl.c: Likewise.
        * final.c: Likewise.
        * fix-header.c: Likewise.
        * gcc.c: Likewise.
        * genattr.c: Likewise.
        * genattrtab.c: Likewise.
        * gencodes.c: Likewise.
        * genconfig.c: Likewise.
        * genemit.c: Likewise.
        * genextract.c: Likewise.
        * genflags.c: Likewise.
        * genopinit.c: Likewise.
        * genoutput.c: Likewise.
        * genpeep.c: Likewise.
        * genrecog.c: Likewise.
        * mips-tfile.c: Likewise.
        * prefix.c: Likewise.
        * protoize.c: Likewise.
        * regmove.c: Likewise.
        * toplev.c: Likewise.
        * tree.c: Likewise.
        * cp/errfn.c: Remove stdarg.h/varargs.h.
        * cp/tree.c: Likewise.

From-SVN: r21997
1998-08-26 08:11:47 +00:00
Craig Burley
dd75c2921d gcc.c: Fix commentary describing %g, %u, %U, and %O.
d
        * gcc.c: Fix commentary describing %g, %u, %U, and %O.
        * gcc.c (do_spec_1): Fix support for %O so the
        temporary file name made for it the first time
        gets reused subsequently.

From-SVN: r21450
1998-07-28 15:33:43 -06:00
Jeffrey A Law
50ea20cfa8 gcc.c (do_spec): Call "error" not "warning".
* gcc.c (do_spec): Call "error" not "warning".
Opps.

From-SVN: r21319
1998-07-21 01:52:35 -06:00
Jeffrey A Law
4089dfabe1 gcc.c (do_spec): Issue a warning for '%[]' usage.
Tue Jul 21 00:31:01 1998  Jeffrey A Law  (law@cygnus.com)
        * gcc.c (do_spec): Issue a warning for '%[]' usage.
        * Undo this change.
        * gcc.c: Delete %[spec] support.
        (do_spec_1, case '('): Likewise.
        (do_spec_1, case '['): Call error.

From-SVN: r21314
1998-07-20 17:38:58 -06:00
Nick Clifton
1ccb8f57d5 gcc.c (do_spec_1): Cope with %g/%u/%U options which do not have a suffix.
8
	* gcc.c (do_spec_1): Cope with %g/%u/%U options which do not have
	a suffix.

From-SVN: r21229
1998-07-16 16:45:49 -06:00
Nick Clifton
40f943dd9f Improve --help support.
From-SVN: r21141
1998-07-14 14:18:56 +00:00
Weiwen Liu
24c2aa3068 gcc.c (do_spec_1): Fix %O handling for secure temporary file creation.
8
        * gcc.c (do_spec_1): Fix %O handling for secure temporary file
        creation.

From-SVN: r21124
1998-07-13 16:54:48 -06:00
Jim Wilson
1228a9bd1e i386.h (CPP_486_SPEC, [...]): New specs.
* i386/i386.h (CPP_486_SPEC, CPP_586_SPEC, CPP_686_SPEC): New specs.
        (CPP_CPU_DEFAULT_SPEC, CPP_CPU_SPEC): Use them.
        (EXTRA_SPECS): Support them.
        * gcc.c: Delete %[spec] support.
        (do_spec_1, case '('): Likewise.
        (do_spec_1, case '['): Call error.
        * i386/aix386ng.h, cygwin32.h, freebsd-elf.h, gas.h, isc.h,
        linux-aout.h, linux-oldld.h, linux.h, osfelf.h, osfrose.h, sco.h,
        sco4.h, sco4dbx.h, sco5.h, sol2.h, sysv3.h (CPP_SPEC): Delete
        %[cpp_cpu].

From-SVN: r21120
1998-07-13 16:38:51 -06:00
Nick Clifton
b8468bc70a Add --help option.
From-SVN: r21109
1998-07-13 17:20:29 +00:00
Jeffrey A Law
20f2d03a8e choose-temp.c (make_temp_file): Accept new argument for the file suffix to use.
* choose-temp.c (make_temp_file): Accept new argument for the
        file suffix to use.  Allocate space for it and add it to the
        template.
        * mkstemp.c (mkstemps): Renamed from mkstemp.  Accept new argument
        for the length of the suffix.  Update template struture checks
        to handle optinal suffix.
        * collect2.c (make_temp_file): Update prototype.
        (main): Put proper suffixes on temporary files.
        * gcc.c (make_temp_file): Update prototype.
        (do_spec_1): Put proper suffixes on temporary files.
Should fix irix build problems.

From-SVN: r20812
1998-06-29 19:41:45 -06:00
Jeff Law
9ec36da574 * Merge from gcc2 June 9, 1998 snapshot. See ChangeLog.13 for
details.

From-SVN: r20808
1998-06-29 15:40:49 -06:00
Jeffrey A Law
39d45901b3 choose-temp.c (choose_temp_base): Restore original variant of this function for compatibility.
* choose-temp.c (choose_temp_base): Restore original variant of
        this function for compatibility.
        (make_temp_file): This is the new, preferred interface to create
        temporary files.
        * collect2.c (choose_temp_base): Delete declaration.
        (make_temp_file): Declare.
        (temp_filename_length, temp_filename): Delete.
        (main): Use make_temp_file to get temporary files.  Use --lang-c
        to force the resulting ctort/dtor file to be compiled with the C
        compiler.  Make sure to remove temporary files on all exit paths.
        * gcc.c (make_temp_file): Provide prototype if MKTEMP_EACH_FILE is
        defined.
        (choose_temp_base): Only provide prototype if MKTEMP_EACH_FILE is
        not defined.
        (do_spec): Use make_temp_file if MKTEMP_EACH_FILE is defined.

From-SVN: r20784
1998-06-28 14:07:32 -06:00
Kaveh R. Ghazi
6cd5dccd5e Consolidate strerror handling, as well as getcwd/getwd.
* configure.in (GCC_NEED_DECLARATIONS): Add strerror, getcwd and
        getwd.
        * acconfig.m4: Add stubs for NEED_DECLARATION_STRERROR,
        NEED_DECLARATION_GETCWD and NEED_DECLARATION_GETWD.
        * cccp.c: Remove strerror()/sys_nerr/sys_errlist decls.
        (my_strerror): Add prototype and make it static.
        * collect2.c: Likewise.
        * cpplib.c: Likewise.
        * gcc.c: Likewise, but keep `my_strerror' extern.
        * protoize.c: Likewise.
        * pexecute.c (my_strerror): Add argument to prototype.
        * system.h: Add prototypes for getcwd, getwd and strerror.  Add
        extern decls for sys_nerr and sys_errlist.  Make abort decl
        explicitly extern.
        * getpwd.c: Remove decls for getwd and getcwd.

From-SVN: r20779
1998-06-28 06:09:57 +00:00
Jeffrey A Law
003ac91d4b choose-temp.c (choose_temp_base): Remove MPW bits.
* choose-temp.c (choose_temp_base): Remove MPW bits.  Use mkstemp
        instead of mktemp.
        * gcc.c (MKTEMP_EACH_FILE): Define.
        (main): No need to call choose_temp_base if we are going to
        use choose_temp_base to create each file later.
        * mkstemp.c: New file.  Adapted from glibc.
        * Makefile.in (xgcc, colect2, protoize, unprotoize): Link in mkstemp.o
        (mkstemp.o): Add dependencies.

From-SVN: r20746
1998-06-26 18:43:42 -06:00
Dave Brolley
ca242225a0 gcc.c (default_compilers): Use new | syntax to eliminate string concatenation.
Thu Jun 25 11:12:29 1998  Dave Brolley  <brolley@cygnus.com>
	* gcc.c (default_compilers): Use new | syntax to eliminate
	string concatenation.

From-SVN: r20711
1998-06-25 04:24:04 -04:00
Richard Henderson
9bf09437c6 * gcc.c (handle_braces): Recognize | between options as an or.
From-SVN: r20664
1998-06-22 15:53:33 -07:00
Dave Brolley
a0d85b7572 Integrate cpplib into the C and C++ front ends.
Wed Jun 10 13:07:02 1998  Dave Brolley  <brolley@cygnus.com>
	* objc/objc-act.c: Add cpplib declarations.
	(lang_decode_option): Initialize cpplib if necessary.
	(lang_decode_option): New argc/argv interface.
	* tree.h (lang_decode_option): New argc/argv interface.
	* toplev.c (lang_options): Add cpp options.
	(main): New interface for lang_decode_option.
	* gcc.c (default_compilers): Don't call cpp for a cpplib-enabled C compiler
	unless -E, -M or -MM is specified.
	* cpplib.h (cpp_handle_option): New function.
	* cpplib.c (cpp_handle_option): New function.
	(cpp_handle_options): Now calls cpp_handle_option.
	* c-tree.h (c_decode_option): New argc/argv interface.
	* c-lex.c (init_parse): cpplib now initialized in c_decode_option.
	* c-lang.c (lang_decode_option): New argc/argv interface.
	* c-decl.c: Add cpplib declarations.
	(c_decode_option): New argc/argv interface.
	(c_decode_option): Call cpp_handle_option.
	(c_decode_option): Now returns number of strings processed.

From-SVN: r20407
1998-06-10 06:12:36 -04:00
Per Bothner
e37cda9b2c One more typo.
From-SVN: r20263
1998-06-06 03:42:32 -07:00
Per Bothner
77346de2e5 Fixed typo: lang_specific_extra_ofiles -> lang_specific_extra_outfiles.
From-SVN: r20262
1998-06-06 03:41:05 -07:00
Per Bothner
f271358e78 gcc.c (lang_specific_pre_link): New LANG_SPECIFIC_DRIVER function.
`
	* gcc.c (lang_specific_pre_link):  New LANG_SPECIFIC_DRIVER function.
	(lang_specific_extra_outfiles):  New LANG_SPECIFIC_DRIVER variable.
	(do_spec, input_filename, input_filename_length):  Make public.
	(main):  Adjust outfiles allocation by lang_specific_extra_outfiles.
	Call lang_specific_pre_link befor elinking.

From-SVN: r20250
1998-06-05 08:57:11 -07:00
Nick Clifton
88117d44fd gcc.c (SWITCH_CURTAILS_COMPILATION): Definition.
* gcc.c (SWITCH_CURTAILS_COMPILATION): Definition.
        (DEFAULT_SWITCH_CURTAILS_COMPILATION): True for options -S and -c.
        (process_command): If HAVE_EXECUTABLE_SUFFIX is defined then scan
        command line arguments to see if an executable is not being
        created, and if so - do not append the suffix.
        * tm.texi (SWITCH_CURTAILS_COMPILATION): Add description of new
        driver macro.

From-SVN: r19824
1998-05-17 17:08:40 -06:00
Jim Wilson
bbeb7b6556 Fix specs file problem reported by Nathan Myers.
* gcc.c (read_specs): Handle missing blank line at end of specs file.

From-SVN: r19622
1998-05-07 13:49:41 -07:00
Kaveh R. Ghazi
76b4b31ead Handle missing vfprintf() & _doprnt() functions with linked in modules,
plus do some general cleanup of variable argument handling.
        * aclocal.m4 (GCC_FUNC_VFPRINTF_DOPRNT): New macro.
        * configure.in: Add a call to GCC_FUNC_VFPRINTF_DOPRNT.
        (AC_CHECK_HEADERS): Remove unused check for varargs.h,sys/varargs.h.
        (AC_CHECK_FUNCS): Remove unused check for vprintf.
        * Makefile.in: Add support for linking in vfprintf.c and doprint.c.
        (cccp.o): Depend on gansidecl.h.
        (cexp.o): Likewise.
        * cccp.c: Convert from using PRINTF_ALIST/PRINTF_DCL to VPROTO as
        per the rest of gcc source.
        * cexp.y: Likewise.  Include gansidecl.h and remove all code made
        redundant.
        * cccp.c: Remove checks for HAVE_VPRINTF and the associated code
        used when vfprintf is missing.
        * cexp.y: Likewise.
        * gcc.c: Likewise.
        * genattrtab.c: Likewise.
        * mips-tfile.c: Likewise.
        * toplev.c: Likewise.
        * vfprintf.c: New file.
        * doprint.c: Likewise.

From-SVN: r19610
1998-05-07 11:44:09 +00:00
Kaveh R. Ghazi
e9a780ecec c-common.c: Convert to using ctype macros defined in system.h.
* c-common.c: Convert to using ctype macros defined in system.h.
        * c-lex.c: Likewise.
        * cccp.c: Likewise.
        * collect2.c: Likewise.
        * rs6000.c: Likewise.
        * cpplib.c: Likewise.
        * fix-header.c: Likewise.
        * gcc.c: Likewise.
        * gen-protos.c: Likewise.
        * pexecute.c: Likewise.
        * protoize.c: Likewise.
        * rtl.c: Likewise.
        * scan.c: Likewise.
        * stmt.c: Likewise.
        * tlink.c: Likewise.
        * toplev.c: Likewise.

From-SVN: r19579
1998-05-06 12:56:58 +00:00
Kaveh R. Ghazi
e572c0c68c Be more careful when including <time.h> and <sys/file.h> in system.h.
Consolidate O_RDONLY/O_WRONLY fallback definitions from various files
into system.h.
        * system.h: Wrap time.h and sys/file.h in autoconf checks.
        Provide default definitions for O_RDONLY and O_WRONLY here.
        * cccp.c, cpplib.c, fix-header.c, gcc.c, protoize.c: Not here.

From-SVN: r19571
1998-05-06 07:58:27 +00:00
Jim Wilson
bb27e6c9ba Fix i386-* failure that shows up as a cpp usage message.
* gcc.c (do_spec_1, case '['): Move flag out of loop and initialize it.

From-SVN: r19350
1998-04-20 13:51:02 -07:00
Michael Meissner
763d7ce894 Fix warning when compiling g++.o
From-SVN: r19342
1998-04-20 13:27:00 +00:00
Jim Wilson
a2a05b0a35 Patches to make g++/g77 give useful error when no files are given.
* gcc.c (lang_specific_driver): Add new parm type to prototype.
	(added_libraries): New file scope static variable.
	(process_command): Initialize added_libraries.  Pass it to
	lang_specific_driver.
	(main): Use added_libraries in check for no input files.

From-SVN: r19281
1998-04-18 08:31:36 -07:00
Jeffrey A Law
c74c0cff2d gcc.c (proces_command): Improve error message for -o with either -c or -S.
* gcc.c (proces_command): Improve error message for -o with
        either -c or -S.

From-SVN: r19058
1998-04-08 16:39:36 -06:00
Bob Manson
10da11319b gcc.c: Add linker spec.
* gcc.c: Add linker spec.
        (link_command_spec): Use %(linker) instead of ld.
        (main): If collect2 is requested as the linker, see if it exists;
        if not, use ld instead.
        * Makefile.in (USE_COLLECT2): It's named collect2 now, not ld.
        (ld:) Deleted.
        (install-collect2): Install as collect2, not ld.
        * configure.in(will_use_collect2): It's named collect2 now.
        * collect2: Remove checks to see if we were invoked recursively.
        (collect_execute): Use _spawnvp under cygwin32.

From-SVN: r19022
1998-04-06 14:51:28 -06:00
Jeff Law
e5e809f419 * Check in merge from gcc2. See ChangeLog.11 and ChangeLog.12
for details.

        * haifa-sched.c: Mirror recent changes from gcc2.

From-SVN: r18984
1998-04-04 06:32:39 -07:00
Stan Cox
97be8f06eb gcc.c, cccp.c, cpplib.c, collect2.c (GET_ENVIRONMENT): Added.
From-SVN: r18914
1998-03-30 14:35:36 +00:00
Michael Meissner
6ed4bb9a67 Make GCC_EXEC_PREFIX work again
From-SVN: r18856
1998-03-27 14:20:40 +00:00
Kaveh R. Ghazi
670ee92097 Major cutover to using system.h:
* Makefile.in (alias.o, bitmap.o, c-aux-info.o, c-common.o,
        c-decl.o, c-iterate.o, c-lang.o, c-lex.o, c-pragma.o, c-typeck.o,
        caller-save.o, calls.o, collect2.o, combine.o, cse.o, dbxout.o,
        dwarf2out.o, dwarfout.o, emit-rtl.o, except.o, explow.o, expmed.o,
        expr.o, final.o, flow.o, function.o, getpwd.o, global.o,
        integrate.o, jump.o, local-alloc.o, loop.o, optabs.o, pexecute.o,
        prefix.o, print-rtl.o, print-tree.o, profile.o, real.o, recog.o,
        reg-stack.o, regclass.o, regmove.o, reload.o, reload1.o, reorg.o,
        rtl.o, rtlanal.o, sdbout.o, stmt.o, stor-layout.o, stupid.o,
        tlink.o, toplev.o, tree.o, unroll.o, varasm.o, xcoffout.o): Depend
        on system.h.
        * alias.c, bitmap.c, c-aux-info.c, c-common.c, c-decl.c,
        c-iterate.c, c-lang.c, c-lex.c, c-pragma.c, c-typeck.c,
        caller-save.c, calls.c, collect2.c, combine.c, cse.c, dbxout.c,
        dwarf2out.c, dwarfout.c, emit-rtl.c, except.c, explow.c, expmed.c,
        expr.c, final.c, flow.c, function.c, gcc.c, getpwd.c, global.c,
        integrate.c, jump.c, local-alloc.c, loop.c, optabs.c, pexecute.c,
        prefix.c, print-rtl.c, print-tree.c, profile.c, real.c, recog.c,
        reg-stack.c, regclass.c, regmove.c, reload.c, reload1.c, reorg.c,
        rtl.c, rtlanal.c, sched.c, sdbout.c, stmt.c, stor-layout.c,
        stupid.c, tlink.c, toplev.c, tree.c, unroll.c, varasm.c,
        xcoffout.c: Include system.h.  Organize include ordering so
        that stdarg/varargs comes before other system headers.  Remove
        spurious casts of functions assured of a prototype in system.h.

From-SVN: r18726
1998-03-20 14:58:42 +00:00
Michael Meissner
e29ef9202e Fix off by 1 error in handling multilibs
From-SVN: r18630
1998-03-16 13:06:49 +00:00
Manfred Hollstein
6e11d4728d a
In gcc/:
	* i386.h (RTX_COSTS): Insert braces around nested if.
	(ADDITIONAL_REGISTER_NAMES): Insert braces around structured
	elements.
	* gcc.c (default_compilers): Properly put brackets around array elements in
	initializer.
	* getopt.c (_getopt_internal): Add explicit braces around nested if;
	reformatted.
	* reg-stack.c (record_asm_reg_life): Add explicit braces around nested if's.
	(record_reg_life_pat): Add explicit parens around && and || in expression.
	(stack_reg_life_analysis): Add parens around assignment used as expression.
	(convert_regs): Likewise.
In gcc/cp/:
	* lang-specs.h: Properly put brackets around array elements in initializer.
	* typeck.c (build_binary_op_nodefault): Correctly place parens around
	&& and || in expression.
In gcc/f/:
	* lang-specs.h: Properly put brackets around array elements in initializer.

From-SVN: r18502
1998-03-12 00:43:12 +00:00
Manfred Hollstein
4e1e206433 a
In gcc/:
	* bitmap.c (bitmap_element_allocate): Remove unused parameter;
	change callers accordingly.
	* cplus-dem.c (arm_special): Remove unused parameter work in prototype
	and definition; change all callers accordingly.
	* except.c (init_eh): Avoid assignment of unused return value of
	build_pointer_type; cast it to void, instead, and remove unused
	variable type.
	* gcc.c (lang_specific_driver): Define prototype only #ifdef
	LANG_SPECIFIC_DRIVER.
	(temp_names): Define only #ifdef MKTEMP_EACH_FILE.
	* genoutput.c (output_epilogue): Initialize next_name to 0.
	* real.c (efrexp): #if 0 prototype and function definition.
	(eremain): Likewise.
	(uditoe): Likewise.
	(ditoe): Likewise.
	(etoudi): Likewise.
	(etodi): Likewise.
	(esqrt): Likewise.
	* reload.c (push_secondary_reload): Define prototype only
	#ifdef HAVE_SECONDARY_RELOADS.
	* varasm.c (assemble_static_space): Define rounded only
	#ifndef ASM_OUTPUT_ALIGNED_LOCAL.
In gcc/cp/:
	* call.c (default_parm_conversions): Remove prototype definition.
	(build_method_call): Remove unused variable result.
	* cvt.c (ocp_convert): Remove unused variable conversion.
	* decl2.c (ambiguous_decl): Add explicit parameter definition for name.
	* except.c (do_unwind): #if 0 definition of unused variables fcall
	and next_pc.
	* expr.c (extract_scalar_init): #if 0 prototype and function definition.
	* init.c (expand_aggr_init_1): Remove unused variable init_type.
	(build_new_1): Remove unused variable t.
	* pt.c (instantiate_class_template): Remove unused variable newtag;
	cast called function return value to void.
	(do_decl_instantiation): Remove unused variables name and fn.
	* tree.c (get_type_decl): Add default return to shut up compiler from
	complaining control reaches end of non-void function.
	* typeck.c (build_x_conditional_expr): Remove unused variable rval.

From-SVN: r18497
1998-03-12 00:29:16 +00:00
Manfred Hollstein
8506650392 c-decl (finish_struct): Change type of min_align to unsigned.
d
gcc/ChangeLog:
	* c-decl (finish_struct): Change type of min_align to unsigned.
	* cplus-dem.c (demangle_function_name): Change type of variable i to size_t;
	remove unused variable len.
	* dwarf2out.c (reg_save): Add explicit cast of -1 to unsigned and a
	comment indicating this is proper behaviour.
	(reg_loc_descriptor): Remove redundant comparison of unsigned variable
	reg >= 0.
	(based_loc_descr): Likewise.
	* enquire.c (bitpattern): Change type of variable i to unsigned.
	* final.c (output_asm_insn): Don't cast insn_noperands to unsigned.
	* flow.c (life_analysis): Change type of variable i to size_t;
	remove unused variable insn.
	* gcc.c (translate_options): Change type of variables optlen, arglen and
	complen to size_t.
	(input_filename_length): Change type to size_t.
	(do_spec_1): Change type of variable bufsize to size_t.
	(main): Change type of variables i and j to size_t;
 	remove subblock local definition of variable i.
	(lookup_compiler): Change type of second argument to size_t;
	change type of variable i to size_t.
	* genemit.c (output_init_mov_optab): Change type of variable i to size_t.
	* genopinit.c (get_insn): Change type of variable pindex to size_t.
	* genrecog.c (add_to_sequence): Change type of variable i to size_t.
	* global.c (global_alloc): Change type of variable i to size_t.
	* regclass.c (init_reg_sets): Change type of variables i and j to unsigned.
	* stmt.c (expand_end_bindings): Change type of variable i to size_t.
	(expand_end_case): Change type of variable count to size_t.
	* toplev.c (main): Change type of variable j to size_t.
	(set_target_switch): Change type of variable j to size_t.
	(print_switch_values): Change type of variable j to size_t;
	remove unused variable flags.
	* varasm.c (assemble_variable): Change type of variable align to size_t.
	(const_hash_rtx): Change type of variable i to size_t.
gcc/cp/ChangeLog:
Sun Mar  8 17:13:38 1998  Manfred Hollstein  <manfred@s-direktnet.de>
	* decl2.c (lang_decode_option): Change j's type to size_t.
	* tree.c (layout_vbasetypes): record_align and desired_align are of
	type unsigned int; const_size and nonvirtual_const_size likewise.

From-SVN: r18490
1998-03-12 00:02:51 +00:00
Kaveh R. Ghazi
c580105315 I've backed out of including stat.h via system.h because stat.h can define...
I've backed out of including stat.h via system.h because stat.h can
define static functions (eg on x86 svr4 according to jfc@mit.edu)
causing code bloat.
        * system.h: Remove sys/stat.h.
        * gcc.c: Add sys/stat.h.

From-SVN: r18289
1998-02-28 06:11:54 +00:00
Kaveh R. Ghazi
17248a6b14 gcc.c: Get system includes...
* gcc.c: Get system includes, prototypes and macros via "system.h"
        instead of doing it manually.  Change all calls of the ctype
        macros to custom versions defined in "system.h".

From-SVN: r18019
1998-02-15 13:41:09 -07:00
Robert Lipe
ededb2fc08 gcc.c: Include <strings.h>/<string.h>, <stdlib.h>, <unistd.h>, <fcntl.h>.
* gcc.c: Include <strings.h>/<string.h>, <stdlib.h>, <unistd.h>,
        <fcntl.h>.
        (free_path_suffix): Remove unreferenced static function.
        (process_command): Remove unused variable temp.
        (default_arg): Remove unused variable i.
        (do_spec_1):  Add parens for assignment used as truth value.
        (main): Likewise.
        (validate_all_switches): Likewise.
        (main): Remove unused variables i, first_time>

From-SVN: r17768
1998-02-07 16:00:07 -07:00
Anthony Green
c6aded7c2b flags.h: New flag (optimize_size).
* flags.h: New flag (optimize_size).
        * toplev.c (main): Parse -Os option and set optimize_space
        accordingly.
        * gcc.c (default_compilers), cp/lang-specs.h, f/lang-specs.h: Define
        __OPTIMIZE_SIZE__ when compiling with -Os.
        * config/dsp16xx/dsp16xx.h, config/i386/i386.h,
        config/i386/dgux.h, config/i960/i960.h, config/pdp11/pdp11.h,
        config/v850/v850.h (OPTIMIZATION_OPTIONS): New SIZE argument
        to macro.
        * config/i386/i386.c (optimization_options): Accept new SIZE argument.

From-SVN: r17497
1998-01-26 16:00:04 -07:00
Mumit Khan
a3105a8956 pexecute.c (pexecute): New function for mingw32.
* pexecute.c (pexecute): New function for mingw32. Supports pipes.
        (pwait): New function for mingw32.
        * gcc.c (execute): Mingw32 pexecute() supports pipes, but cygwin32
        pipe support is broken for now.

Co-Authored-By: J.J. VanderHeijden <J.J.vanderHeijden@student.utwente.nl>

From-SVN: r17396
1998-01-17 14:33:56 -07:00
Jeff Law
956d69504d Merge from gcc-2.8
From-SVN: r16987
1997-12-06 17:31:01 -07:00
Jeff Law
da932f04bf m68k.c: Include tree.h for dwarf2out_cfi_label.
* m68k.c: Include tree.h for dwarf2out_cfi_label.

        * gcc.c (process_command): Do not take address of function fatal when
        calling lang_specific_driver.

        * config/i386/cygwin32.h (DWARF2_UNWIND): Exception handling
        doesn't work with it yet, so set it to 0.
        * config/i386/xm-cygwin32.h (NO_SYS_SIGLIST): Define.

        * cse.c (cse_insn): Check for invalid entries when taking references.
More assorted pending patches.

From-SVN: r16978
1997-12-06 08:48:29 -07:00
Jeff Law
e9a25f70a0 Update mainline egcs to gcc2 snapshot 971021.
From-SVN: r16278
1997-11-02 14:19:36 -07:00
Jeffrey A Law
a63d08e606 cccp.c (sys_errlist): Remove special 4.4bsd declaration.
* cccp.c (sys_errlist): Remove special 4.4bsd declaration.
        * collect2.c (sys_errlist): Likewise.
        * cpplib.c (sys_errlist): Likewise.
        * gcc.c (sys_errlist): Likewise.
        * protoize (sys_errlist): Likewise.
        * configure.in: Check for strerror.
        * xm-freebsd.h (HAVE_STRERROR): Remove definition.
        * xm-gnu.h (HAVE_STRERROR): Likewise.
        * xm-linux.h (HAVE_STRERROR): Likewise.
        * xm-netbsd.h (HAVE_STRERROR): Likewise.
        * xm-bsd386.h (HAVE_STRERROR): Likewise.
        * xm-cygwin32.h (HAVE_STRERROR): Likewise.
        * xm-dos.h (HAVE_STRERROR): Likewise.
        * xm-mingw32.h (HAVE_STRERROR): Likewise.
        * xm-pa.h (HAVE_STRERROR): Likewise.
        * xm-papro.h (HAVE_STRERROR): Likewise.
        * xm-sysv4.h (HAVE_STRERROR): Likewise.
        * configure, config.in: Rebuilt.
Remove the need to define HAVE_STRERROR for each host port.

From-SVN: r15011
1997-09-01 11:02:53 -06:00
Jeff Law
45832e2182 Take out __EGCS__ and __EGCS_MINOR__.
From-SVN: r14839
1997-08-18 21:42:44 -06:00
Jeffrey A Law
094420edc0 gcc.c (default_compilers): Add __EGCS__ and __EGCS_MINOR__ predefines.
* gcc.c (default_compilers): Add __EGCS__ and __EGCS_MINOR__
        predefines.

From-SVN: r14822
1997-08-17 15:15:15 -06:00
Jeffrey A Law
9af0625405 version.c: Change the version string to look like...
* version.c: Change the version string to look like:
        egcs-1.0.0 970814 (gcc2-970802 experimental).

        * gcc.c: Take out experimental snapshot warning message.

From-SVN: r14811
1997-08-15 12:50:36 -06:00
Jeffrey A Law
aa32d84158 * Integrate tlink patch from jason@cygnus.com
* gcc.c (SWITCH_TAKES_ARG): Add 'V', 'B' and 'b'.
        (process_command): Increment n_switches for them.  Don't discard
        their args.  Validate them.
        (main): Escape " marks when creating COLLECT_GCC_OPTIONS.
        From Rohan Lenard.
        (process_command): Set include_prefixes from COMPILER_PATH.
        (main): Set COLLECT_GCC_OPTIONS sooner.
        * confiugre.in: Link ../ld/ld.new to collect-ld rather than real-ld.
        * tlink.c, hash.c, hash.h: New files.
        * Makefile.in (USE_COLLECT2): Always use collect2.
        (collect2): Depend on and link in hash.o and tlink.o.
        (tlink.o, hash.o): Add dependencies.

tlink patches from Jason.

From-SVN: r14769
1997-08-11 14:23:53 -06:00
Jeff Law
861bb6c1b0 Initial revision
From-SVN: r14764
1997-08-11 09:56:58 -06:00
Richard Kenner
bdc5ed93ce (convert_filename): Fix typo.
From-SVN: r14440
1997-07-14 08:17:39 -04:00
Richard Kenner
a23ea59844 (process_command): If -save-temps and -pipe were specified together,
don't do -pipe.

From-SVN: r14415
1997-07-13 14:03:18 -04:00
Doug Evans
7ad9ff7a2b gcc.c (main): Handle blank in version_string when comparing with compiler_version.
* gcc.c (main): Handle blank in version_string when comparing
	with compiler_version.

From-SVN: r14414
1997-07-13 16:21:56 +00:00
Richard Kenner
5bb67e36f6 Check for and read ${libdir}/gcc-lib/specs to override the default specs.
From-SVN: r14278
1997-06-21 06:29:14 -04:00
Michael Meissner
20df0482b5 Add %include, %include_noerr, %rename support to specs
From-SVN: r13803
1997-03-25 22:03:18 +00:00
Jim Wilson
03fc162077 (init_spec): Delete parameter. Always initialize extra_specs.
(process_command, main): Change all callers.

From-SVN: r13737
1997-03-18 13:19:22 -08:00
Richard Kenner
a34259fc5b (set_spec): Fix comment-in-comment typo.
From-SVN: r13643
1997-02-15 18:26:43 -05:00
Richard Kenner
eb2be0e656 (process_command): Allocate space for terminating null.
From-SVN: r13641
1997-02-15 17:25:35 -05:00
Richard Kenner
853f1cc30f (process_command): Fix improper use of strncpy.
From-SVN: r13574
1997-02-01 18:53:54 -05:00
Michael Meissner
fcc9ad83f6 Fix typo.
From-SVN: r13504
1997-01-16 23:59:37 +00:00
Michael Meissner
79aff5ac0d Cleanup specs support
From-SVN: r13502
1997-01-16 22:15:53 +00:00
Richard Kenner
9f3c45fd62 (handle_braces): Rework last change.
From-SVN: r13241
1996-12-07 18:29:21 -05:00
Richard Kenner
1ba9a4871f (give_switch): Add new arg, INCLUDE_BLANKS.
(handle_braces): All callers changed.
Add support for new construct: %{S*^}.

From-SVN: r13223
1996-12-07 17:26:06 -05:00
Brendan Kehoe
610c62ac70 Makefile.in (DRIVER_DEFINES): New macro, with the macro definitions for the driver.
* Makefile.in (DRIVER_DEFINES): New macro, with the macro
        definitions for the driver.
        (gcc.o): Make rule use $(DRIVER_DEFINES).
        * gcc.c (process_command) [LANG_SPECIFIC_DRIVER]: Call
        lang_specific_driver, passing along the addr of FATAL for errors
        along with our ARGC and ARGV.

From-SVN: r13222
1996-12-07 11:53:42 -05:00
Richard Kenner
5a570aded7 (exit): If VMS, define as __posix_exit.
(option_map): Add define-macro and undefine-macro.

From-SVN: r13150
1996-11-12 18:24:31 -05:00
Michael Meissner
d9ac3a0784 Add -specs support
From-SVN: r13075
1996-10-29 21:21:57 +00:00
Richard Kenner
d348bc3450 (default_compilers): -ansi no longer implies -$ to cpp.
From-SVN: r12926
1996-10-09 16:18:50 -04:00
Jim Wilson
71591a1d69 (used_arg): When call xmalloc for mswitches, pass 1 if
n_switches is zero.

From-SVN: r12885
1996-10-01 11:18:44 -07:00
Stan Cox
51c0d897d4 (do_spec_1): Allow -A in %[Spec].
From-SVN: r12852
1996-09-27 16:54:10 +00:00
Richard Kenner
1a0bdd2991 (used_arg): Fix multilib_matches parsing to not corrupt entry parameter.
From-SVN: r12834
1996-09-24 08:28:52 -04:00
Jim Wilson
1bdf86c3ba (link_command_spec): Move -T options to end of link command
line.

From-SVN: r12728
1996-09-16 19:37:51 -07:00
Richard Kenner
e0040a8ede (convert_filename): Don't start looking for '.' until after last
directory separator.

From-SVN: r12724
1996-09-14 20:55:05 -04:00
Richard Kenner
853e0b2def (HAVE_EXECUTABLE_SUFFIX): New macro.
(convert_filename): New function.
(process_command, case 'o'): Call it.
(process_command, default case): Likewise; delete old code.

From-SVN: r12713
1996-09-14 20:40:31 -04:00
Doug Evans
b8a8c83b10 gcc.c: Change ifndef _WIN32 to ifndef NO_SYS_FILE_H when...
* gcc.c: Change ifndef _WIN32 to ifndef NO_SYS_FILE_H when deciding
	whether to include sys/file.h.
	(execute): -pipe is supported for cygwin32.

From-SVN: r12652
1996-08-18 01:32:53 +00:00
Michael Meissner
f7fba6aa12 mp/load version # in specs file so __GNUC_MINOR__ will be correct
From-SVN: r12635
1996-08-13 22:21:04 +00:00
Michael Meissner
c8c2dcdce1 Fix typo
From-SVN: r12629
1996-08-12 22:15:13 +00:00
Michael Meissner
961b7009ee Speed up genmultilib; Add MULTIB_EXTRA_OPTS
From-SVN: r12623
1996-08-12 16:36:42 +00:00
Richard Kenner
c26383a78b (default_compilers): Extra Fortran extensions.
From-SVN: r12513
1996-07-18 17:45:48 -04:00
Mike Stump
0f41302f47 formatting tweaks
From-SVN: r12390
1996-07-03 22:07:53 +00:00
Richard Kenner
4689ad58a1 (default_compilers): Add null entries for languages we heard of.
(main): If found one of those entries, say compiler not installed.

From-SVN: r12388
1996-07-03 17:09:09 -04:00
Doug Evans
1c87477348 gcc.c (PEXECUTE_VERBOSE): Define.
* gcc.c (PEXECUTE_VERBOSE): Define.
(execute): Pass PEXECUTE_VERBOSE to pexecute if -v.

From-SVN: r12332
1996-06-26 02:35:26 +00:00
Doug Evans
fe628d0932 * gcc.c (pfatal_pexecute): Delete code to check errno < sys_nerr.
From-SVN: r12281
1996-06-13 14:45:59 +00:00
Doug Evans
c10d53dd60 gcc.c (_WIN32): Don't include process.h or declare spawnv{,p}.
* gcc.c (_WIN32): Don't include process.h or declare spawnv{,p}.
	(pexecute,pwait): Add prototypes.
	(PEXECUTE_{FIRST,LAST,SEARCH}): Define.
	(execv,execvp): Delete decls.
	(perror_exec): Delete.
	(pfatal_pexecute): New function.
	(pexecute support): Delete.
	(execute): -pipe not supported if _WIN32 or OS2.
	Update call to pexecute.  Fatal error if pexecute fails.  Call pwait.

From-SVN: r12269
1996-06-10 20:02:26 +00:00
Doug Evans
fd5e7009f6 gcc.c (do_spec_1): Allow leading text in version string.
* gcc.c (do_spec_1): Allow leading text in version string.
	Delete support for default minor number = 0.

From-SVN: r12264
1996-06-10 18:53:21 +00:00
Jim Wilson
ffd8633682 (MULTILIB_SELECT): Delete definition.
(multilib_select): Delete static initializer.
(multilib_obstack, multilib_raw): New global variables.
(multilib.h): Include inside multilib_raw definition.
(main): Set multilib_select from multilib_raw.

From-SVN: r12239
1996-06-07 19:44:31 -07:00
Doug Evans
2ff43a3340 (MSDOS pexecute): Call xmalloc, not malloc.
From-SVN: r12119
1996-05-27 00:05:23 +00:00
Doug Evans
6aa62cff4e gcc.c: #include "gansidecl.h".
* gcc.c: #include "gansidecl.h".
	(PROTO,VPROTO,PVPROTO,VPROTO,VA_START,NULL): Delete.
	(GENERIC_PTR,NULL_PTR,P_tmpdir): Delete.
	(choose_temp_base): Declare as extern, delete internal copy.
	(concat): Rewrite to take a variable number of arguments.
	(choose_temp_base_try,concat[346]): Delete.
	(translate_options,set_spec,process_command,do_spec_1,
	is_directory,main): Always use concat, not concat[346].  Pass
	NULL_PTR as trailing arg to concat.

From-SVN: r11794
1996-04-15 17:59:56 +00:00
Richard Kenner
bb9da76848 (process_command): Instead of hardcoding non-empty switches_need_spaces to turn on "o" and "L"...
(process_command): Instead of hardcoding non-empty
switches_need_spaces to turn on "o" and "L", make the string contain
the switches that need the spaces.

From-SVN: r11609
1996-03-24 07:28:21 -05:00
Richard Kenner
815cf875cb (DEFAULT_SWITCH_TAKES_ARG): New macro, from SWITCH_TAKES_ARG.
(SWITCH_TAKES_ARG): Use it.

From-SVN: r11265
1996-02-13 17:55:17 -05:00
Richard Kenner
b27804a876 (warn_std_ptr): Initialize with 0 instead of NULL_PTR.
From-SVN: r11128
1996-01-31 07:15:10 -05:00
Michael Meissner
841faeeddd EXTRA_SPECS addition
From-SVN: r11063
1996-01-18 15:19:51 +00:00
Doug Evans
3a26543176 gcc.c (process_command): New local lang_n_files, and use it in test of -c with -o.
* gcc.c (process_command): New local lang_n_files, and use
	it in test of -c with -o.  Move test of -save-temps.
	Test for trailing NUL in -c.

From-SVN: r11038
1996-01-17 14:51:41 +00:00
Doug Evans
ed846da308 (do_spec_1, case 'W'): Rename local index' to cur_index' to avoid warning
on solaris.

From-SVN: r11030
1996-01-16 17:18:36 +00:00
Richard Kenner
5fc08cad60 (process_commands): Remove inadvertant fallthrough.
From-SVN: r11004
1996-01-15 20:36:45 -05:00
Richard Kenner
47288231ca (struct compilers): Add -ax option.
From-SVN: r10847
1995-12-24 17:40:40 -05:00
Richard Kenner
5d7bb90c0f (unused_prefix_warning): Include machine_suffix if require_machine_suffix.
(warn_B, warn_std, warn_std_ptr): New variables.
(process_commands): Use them and NULL_PTR as WARN arg to add_prefix.

From-SVN: r10846
1995-12-24 08:43:10 -05:00
Richard Kenner
f2cf3e1ed9 (process_command): Give error for -c with -o and multiple compilations.
(handle_braces): Rename variable "pipe" to "pipe_p".

From-SVN: r10845
1995-12-24 08:08:29 -05:00
Richard Kenner
c6b51be9d2 (my_strerror): Return "cannot access" if errno is 0.
(perror_with_name, pfatal_with_name, perror_exec): Don't assume that
the returned value from my_strerror contains no '%'s.
(sys_nerr): Declare only if HAVE_STRERROR is not defined.

From-SVN: r10714
1995-12-13 19:12:10 -05:00
Jason Merrill
bacebbcf51 (LIBGCC_SPEC): Do link with libgcc when -shared.
From-SVN: r10677
1995-12-05 03:26:37 +00:00
Doug Evans
164c4c918a (do_spec_1): Fix typos in version calculation.
From-SVN: r10634
1995-11-29 23:17:30 +00:00
Richard Kenner
aa76a77e6c Remove fix_argv kludge.
From-SVN: r10340
1995-09-12 18:30:06 -04:00
Richard Kenner
2b16a9d39d (main): When concat gcc_exec_prefix and standard_startfile_prefix, put
machine_suffix in the middle.

From-SVN: r10227
1995-08-13 21:29:58 -04:00
Richard Kenner
03c424843c (MULTILIB_DIRS): Provide default if not defined.
(multilib_defaults): New static variable.
(default_arg): New static function.
(set_multilib_dir): Ignore default arguments.
(print_multilib_info): Ignore entries which use default arguments.

From-SVN: r10155
1995-07-26 07:58:10 -04:00
Richard Kenner
3d13060543 (default_compilers, cpp): Specify -lang-c89 if -ansi is given.
This turns off C++ comment recognition.

From-SVN: r10149
1995-07-18 19:23:30 -04:00
Richard Kenner
dc28c6c62b (p{fatal,error}_with_name, perror_exec): Quote filename.
From-SVN: r10108
1995-07-10 18:20:39 -04:00
Richard Kenner
a35311b035 Update FSF address.
From-SVN: r9961
1995-06-15 07:52:21 -04:00
Doug Evans
7f9cce93f3 (link_command_spec): Undo patch of May 11.
-nostdlib implies -nostartfiles again.
New argument -nodefaultlibs.

From-SVN: r9932
1995-06-12 19:01:48 +00:00
Richard Kenner
2e21df5a7f (do_spec_1, case 'g'): Handle %O as suffix if MKTEMP_EACH_FILE.
From-SVN: r9892
1995-06-06 17:57:34 -04:00
Doug Evans
5e1d9b962e (link_command_spec): Move ENDFILE_SPEC from -nostdlib to -nostartfiles.
From-SVN: r9790
1995-05-23 23:54:00 +00:00
Richard Kenner
f70165f69f (HAVE_OBJECT_SUFFIX): New macro.
(process_command): Convert x.o to x.foo for OBJECT_SUFFIX of ".foo".
(do_spec_1): Avoid shadow variable "i" and always use for loop var.

From-SVN: r9766
1995-05-22 17:10:06 -04:00
Richard Kenner
e9990579f1 (fix_argv): Removed call to free.
Changed WINNT to _WIN32.

From-SVN: r9731
1995-05-16 18:35:31 -04:00
Richard Kenner
1346ae41e6 (default_compilers): Remove entries for Ada, C++, Chill, and Fortran;
#include specs.h instead.

From-SVN: r9681
1995-05-14 10:37:53 -04:00
Doug Evans
7e2b9499e2 (link_command_spec): Make -nostdlib no longer imply -nostartfiles.
From-SVN: r9630
1995-05-12 01:06:03 +00:00
Jim Wilson
8faf4a6843 (main): Pass INIT_ENVIRONMENT to putenv.
From-SVN: r9455
1995-04-25 15:39:42 -07:00
Richard Kenner
ba78c9ff87 (default_compilers): Pass -I to gnat1.
From-SVN: r9429
1995-04-21 08:23:45 -04:00
Richard Kenner
adcb8d7d82 (OBJECT_SUFFIX): Default now ".o", not "o".
(all specs): Remove "." before %O; use %O in a few missing cases.

From-SVN: r9325
1995-04-07 08:09:21 -04:00
Richard Kenner
0b1dbf9e61 (default_compilers): Pass -W and -w to gnat1.
From-SVN: r9294
1995-04-02 08:11:46 -04:00
Richard Kenner
665bf3512b (print_multilib_info): Don't use LAST_PATH if not set.
From-SVN: r9281
1995-04-01 08:25:16 -05:00
Jim Wilson
e8601ecbcb (process_command): Delete code modifying gcc_exec_prefix.
(main): Put it here after last use of gcc_exec_prefix.  For cross
compiler, set startfile_prefixes if gcc_exec_prefix is set and
standard_startfile_prefix is a relative path.

From-SVN: r9253
1995-03-29 15:10:28 -08:00
Richard Kenner
b6da85666d Removed __NetBSD__ from conditional.
Declare strerror if HAVE_STRERROR is defined; otherwise declare sys_errlist
and sys_nerr.
(my_strerror): New function.

From-SVN: r9233
1995-03-27 07:15:55 -05:00
Jason Merrill
0600f3fab5 Move SunOS 4 assembler flags from default_compilers into ASM_SPEC.
From-SVN: r9197
1995-03-16 23:18:10 +00:00
Doug Evans
2628b9d33d (print_search_dirs): New variable.
(build_search_list): New function.
(putenv_from_prefixes): Call it.
(option_map): New option --print-search-dirs.
(process_command): Handle it.
(main): Print installation directory and exec/startfile_prefixes if
--print-search-dirs given.

From-SVN: r9085
1995-02-25 15:16:38 +00:00
Richard Kenner
34dd383844 (SWITCH_TAKES_ARG): Add `x'.
(process_command): -Wl, -Xlinker, and -lm values always go to linker
even if -x was specified.

From-SVN: r9035
1995-02-22 17:37:01 -05:00
Richard Kenner
278479ede5 (default_compilers): Remove rule for ".ada".
Pass .ads or .adb suffix to -dumpbase, depending on input filename.

From-SVN: r9025
1995-02-21 19:25:17 -05:00
Richard Kenner
6ce3c2a19a (fix_argv): Rewrite.
From-SVN: r9013
1995-02-21 18:52:14 -05:00
Richard Kenner
56070e5503 (read_specs): Use length read when inserting zero.
From-SVN: r8979
1995-02-21 06:16:06 -05:00
Richard Kenner
ae618a2808 (default_compilers): Add entries for .f and .F.
From-SVN: r8977
1995-02-21 05:57:30 -05:00
Richard Kenner
29a94cd51e Update comment.
From-SVN: r8909
1995-02-11 16:10:52 -05:00
Richard Kenner
ed7dae049f (specs): Use %O instead of "o" for object file suffix.
(do_spec_1, case 'O'): New option.

From-SVN: r8908
1995-02-11 16:08:02 -05:00
Richard Kenner
34cd1bd74c (execute): Don't wait for just any N subprocesses...
(execute): Don't wait for just any N subprocesses, since we may have
started with some subprocesses before we started executing.  Wait just
for _our_ N subprocesses.

From-SVN: r8746
1995-01-13 19:37:56 -05:00
Jim Wilson
0d6fc1be02 (print_multilib_info): Initialize last_path_len to 0.
From-SVN: r8706
1994-12-29 11:16:48 -08:00
Per Bothner
13bdb4e26a * gcc.c (default_compilers): Add support for Chill (.ch and .chi).
From-SVN: r8637
1994-12-09 15:10:41 -08:00
Jason Merrill
68d69835ac Shared library support.
From-SVN: r8519
1994-11-19 04:09:58 +00:00
Richard Kenner
9c4faac1d5 (main): For -V output, give both driver and compiler versions, if they
differ.

From-SVN: r8472
1994-11-16 16:40:04 -05:00
Richard Kenner
9200adce70 (process_command): Ignore LIBRARY_PATH and LPATH if cross-compiler.
From-SVN: r8396
1994-11-07 11:02:15 -05:00
Torbjorn Granlund
9b226f9093 (process_command): Don't forget to split -Wl arguments at commas.
From-SVN: r8350
1994-10-27 22:50:06 +00:00
Torbjorn Granlund
368dfd3a5b (process_command): Handle -Wl, and -Xlinker similar to -l,
i.e., preserve their order with respect to linker input files.

From-SVN: r8349
1994-10-27 18:04:25 +00:00
Jason Merrill
d1e04478b0 (STARTFILE_SPEC): Wrap startfiles in %{!shared:}.
From-SVN: r8325
1994-10-20 20:53:07 +00:00
Jason Merrill
bccef0116a (default_compilers): Treat files with an extension of .c++
as C++ code.

From-SVN: r8297
1994-10-18 00:33:02 +00:00
Michael Bushnell
f4d21c5c16 Define O_RDONLY if not already defined and use it in read_specs's call
to open.

From-SVN: r8217
1994-10-05 01:52:40 +00:00
Ian Lance Taylor
0b90f9c2dc If the POSIX.1 wait macros are defined, use them.
From-SVN: r8213
1994-10-04 20:53:02 +00:00
Richard Kenner
b5eda7762d Install omitted hunk from last diff.
From-SVN: r8190
1994-10-01 06:44:43 -04:00
Doug Evans
78b4f18284 (process_command): Fix typo.
From-SVN: r8189
1994-10-01 03:57:21 +00:00
Richard Kenner
48ff801bda Don't include sys/file.h for winnt; use process.h instead.
(concat): Now just concats two things; all callers changed.
(concat[346]): New functions.
(dir_separator_str): New variable.
(exec_prefixes, startfile_prefixes, include_prefixes): Renamed from same names
without plural; all users changed.
(find_a_file, process_command, do_spec_1): Use DIR_SEPARATOR.
(find_file, is_directory, main): Likewise.
(lookup_compiler): If OS/2, do case-independent search.
(fix_argv): New function on winnt.
(FIX_ARGV): New macro for some systems; use instead of argv.

From-SVN: r8184
1994-09-30 17:31:09 -04:00
Jim Wilson
57cb9b6087 (default_compilers): Add %Z to all cpp specs.
(n_preprocessor_options, preprocessor_options): New variables.
(process_command): Handle -Wp option.
(do_spec_1): Handle %Z spec.

From-SVN: r8175
1994-09-29 17:13:09 -07:00
Richard Kenner
92bd6bdc13 (struct option_map): Sort in alphabetical order.
(translate_options): Ignore option once an error occurs.
Fix error with reversed 'a' and 'o'.
Give error if specified abbreviation is unambiguous.

From-SVN: r8165
1994-09-29 18:24:38 -04:00
Richard Kenner
9b783fc953 (process_command): Add new switch, -dumpmachine.
From-SVN: r8102
1994-09-20 17:49:35 -04:00
Richard Kenner
2c793b3251 Rework last change so it's done like collect2.c.
From-SVN: r8090
1994-09-15 15:38:29 -04:00
Michael Bushnell
0212779cc8 Include <sys/errno.h> in case `errno' is a macro defined there.
From-SVN: r8082
1994-09-14 14:19:02 +00:00
Michael Meissner
c2fdae8ecd DJ patches for MSDOS
From-SVN: r7792
1994-07-22 13:55:40 +00:00
Jim Wilson
e21c472a1f (process_command): When have -BstageN option, pass include
not stageN/../include to preprocessor.

From-SVN: r7779
1994-07-18 19:05:10 -07:00
Charles Hannum
842a1144f2 Do the 4.4BSD sys_errlist modification for NetBSD also.
From-SVN: r7707
1994-07-11 19:03:10 +00:00
Jim Wilson
62a66e0735 (DEFAULT_WORD_SWITCH_TAKES_ARG): Add -isystem.
From-SVN: r7641
1994-07-02 15:52:50 -07:00
Richard Kenner
353646926a (do_spec_1, case 'P'): Don't add underscores to macros starting with
'_[A-Z]'.

From-SVN: r7626
1994-06-30 18:21:18 -04:00
Doug Evans
60103a3482 gcc.c: Include multilib.h.
* gcc.c: Include multilib.h.
	(print_multi_lib, print_multi_directory, multilib_select,
	multilib_dir): New static variables.
	(option_map): Added --print-multi-lib and --print-multi-directory.
	(set_spec): Get multilib_select from specs file.
	(process_command): Dump multilib_select into specs file.  Handle
	-print-multi-lib and -print-multi-directory.
	(do_spec_1): Try multilib_dir for %D case.
	(find_file): Try multilib_dir.
	(main): Call set_multilib_dir.  Handle print_multi_lib and
	print_multi_directory.
	(used_arg, set_multilib_dir, print_multilib_info): New functions.

From-SVN: r7491
1994-06-15 08:04:07 +00:00
Richard Kenner
4c9a05bc55 Cast pointer operands to bzero, bcopy, and bcmp to (char *).
From-SVN: r7472
1994-06-14 18:19:28 -04:00
Richard Kenner
460dcab481 (find_a_file): Try EXECUTABLE_SUFFIX first, then file without the
suffix.

From-SVN: r7459
1994-06-14 17:34:01 -04:00
Doug Evans
256a105a30 (default_compilers): Pass -MG to cpp if present.
(option_map): New option --print-missing-file-dependencies/-MG.

From-SVN: r7392
1994-05-30 17:58:54 +00:00
Doug Evans
d7715b7064 (process_command): Kludge in stageN/../include instead of include.
From-SVN: r7270
1994-05-10 21:49:41 +00:00
Richard Kenner
d5ea2ac4c7 (delete_if_ordinary): New function.
(delete_temp_files, delete_failure_queue): Call it.

From-SVN: r7267
1994-05-09 18:32:57 -04:00
Stan Shebs
3061ec2bdb *** empty log message ***
From-SVN: r7218
1994-05-06 01:00:48 +00:00
Jim Wilson
e184d694d8 (translate_options): For options that take an argument,
don't skip the argument if it doesn't exist.

From-SVN: r7190
1994-05-02 13:53:21 -07:00
Richard Kenner
75b1162915 (link_command_spec): Add -Z argument for ZMAGIC's on FreeBSD.
From-SVN: r7154
1994-04-25 14:23:10 -04:00
Richard Kenner
6c396fb5dc (handle_braces, check_live_switch): Refine previous change.
From-SVN: r7139
1994-04-22 15:02:13 -04:00
Richard Kenner
ac4cf5d96f (default_compilers): If -E and the file is (e.g.) x.s, don't run the
assembler; similarly for .i, .ii, .adb, etc.

From-SVN: r7129
1994-04-21 17:23:49 -04:00
Richard Kenner
6a9e290eec Add new options -print-file-name= and -print-prog-name=.
From-SVN: r7079
1994-04-19 17:57:14 -04:00
Richard Kenner
f5b0eb4e88 (struct switchstr): New field LIVE_COND.
(process_command): Initialize it.
(check_live_switch): New function.
(handle_braces): Call it.

From-SVN: r7078
1994-04-19 17:48:23 -04:00
Doug Evans
a78a8d589e (process_command): Minor white space cleanups to last patch.
From-SVN: r6969
1994-04-06 00:07:56 +00:00
Doug Evans
ea694f2d44 (process_command): Add "include" prefix for [blah/]stageN.
From-SVN: r6968
1994-04-06 00:04:56 +00:00
Jim Wilson
f62a12d07d Change "gstdarg.h" to <stdarg.h> and "gvarargs.h" to <varargs.h>.
From-SVN: r6942
1994-03-31 21:25:31 -08:00
Richard Kenner
6b0639bc6c (process_command, case 'B'): If name is "stageN/", add "include" to
system include prefix.

From-SVN: r6924
1994-03-30 17:21:05 -05:00
Jim Wilson
2d879387e2 (include_prefix): New variable.
(process_command): Add path/include to include_prefix when see a
-Bpath option.
(do_spec_1, case 'I'): Pass include_prefix directories to cpp with
the -isystem option.

From-SVN: r6813
1994-03-18 12:37:22 -08:00
Richard Kenner
54a88f9251 (do_spec_1): Don't duplicate a macro starting with '__'.
From-SVN: r6764
1994-03-13 06:45:59 -05:00
Richard Kenner
d18225c493 Use PVPROTO for varargs prototypes.
From-SVN: r6744
1994-03-11 08:01:45 -05:00
Richard Kenner
4b19dee8c6 ([__MSDOS__]): Use #ifdef, not #if.
From-SVN: r6739
1994-03-10 15:18:00 -05:00
Richard Kenner
870bc05205 (execute): Initialize PROG.
From-SVN: r6644
1994-02-27 10:48:25 -05:00
Richard Kenner
7aaf8abb28 (default_compilers): Generate and use .ii files in the intermediate
stage of compiling C++ source.

From-SVN: r6553
1994-02-14 19:13:05 -05:00
Doug Evans
fd2c2b2b62 (fatal, error): Fix declarations (make dependant on HAVE_VPRINTF).
From-SVN: r6545
1994-02-13 07:34:55 +00:00
Doug Evans
99360286e5 (PROTO): Define.
Add prototypes for static functions.

From-SVN: r6542
1994-02-12 16:34:43 +00:00
Doug Evans
b67b29cd33 (VPROTO, VA_START): Define.
From-SVN: r6532
1994-02-12 00:51:50 +00:00
Richard Kenner
4f90e4a0f7 If __STDC__, include gstdarg and use ANSI form of varargs.
From-SVN: r6514
1994-02-10 08:07:10 -05:00
Richard Kenner
4aea22caf1 (default_compilers, @ada): Don't duplicate "-gnat" parameters; pass
-quiet unless -Q is specified.

From-SVN: r6456
1994-02-01 08:32:46 -05:00
Jim Wilson
fb99c21cfa (translate_options): Skip arguments of -B, -b, -V, -x,
and -Xlinker options.

From-SVN: r6289
1993-12-23 16:26:16 -08:00
Richard Kenner
c1a9a99cd0 (default_compilers, gnat1): Don't write -gnatb.
From-SVN: r6285
1993-12-23 17:49:04 -05:00
Richard Kenner
53117a2f4d (compiler_version): New variable.
(spec_version): Initialize from DEFAULT_TARGET_VERSION.
(main): Distinguish COMPILER_VERSION from TARGET_VERSION.
(process_command): Use COMPILER_VERSION for %v.
Guard against a COMPILER_VERSION that lacks a minor.

From-SVN: r6264
1993-12-22 13:39:29 -05:00
Richard Kenner
cc70323d03 (default_compilers): Treat ".cpp" as C++.
From-SVN: r6260
1993-12-22 07:42:29 -05:00
Richard Stallman
dc476ce26f (default_compilers): Do define __GNUC_MINOR__ if input is `-'.
From-SVN: r6166
1993-11-26 20:58:04 +00:00
Richard Stallman
500c9e81dc (do_spec_1): Use spec_version for %v, not version_string.
Distinguish %v1 and %v2.
(default_compilers): For __GNUC_MINOR__, use %v2.
For __GNUC__ and __GNUG__, use %v1.

From-SVN: r5976
1993-11-02 23:05:13 +00:00
Richard Stallman
829407e190 (default_compilers): Define __GNUC_MINOR__, using %v.
(do_spec_1): Implement %v.

From-SVN: r5899
1993-10-26 19:04:27 +00:00
Jim Wilson
5d672cd7e6 (sys_errlist): Conditionalize declaration for BSD 4.4.
From-SVN: r5843
1993-10-20 16:20:09 -07:00
Richard Stallman
cbc580f02b (read_specs): Fix call to bzero.
From-SVN: r5656
1993-10-07 15:27:56 +00:00
Richard Kenner
6710c3bdf8 (read_specs): Make a null entry at end of `compilers' when reading new
entry from file.

From-SVN: r5615
1993-10-05 16:25:24 -04:00
Richard Kenner
da6d85c045 (choose_temp_base): Correct size allocated for temp_filename.
From-SVN: r5604
1993-10-05 14:08:10 -04:00
Richard Kenner
c1de946da1 (default_compilers): Add rules for Ada.
From-SVN: r5587
1993-10-03 22:10:24 -04:00
Jim Wilson
fa0d53694e (process_command): Don't warn for -x after last input file
if spec_lang is zero.

From-SVN: r5288
1993-09-08 12:08:15 -07:00
Ian Lance Taylor
7560d6cb1e Correct last change.
From-SVN: r5190
1993-08-20 16:25:56 +00:00
Ian Lance Taylor
4dbc7773ff Permit relative path for standard_startfile_prefix
From-SVN: r5091
1993-08-06 20:45:36 +00:00
Richard Stallman
14553b7569 (process_command): Don't check whether file `-' exists.
From-SVN: r5066
1993-08-04 03:57:21 +00:00
Richard Stallman
1df80ae415 (main): Improve "No input files" error message.
From-SVN: r4971
1993-07-23 18:36:41 +00:00
Jim Wilson
a2dfec996f (link_command_spec): Move %{T*} after %{L*} and %D.
From-SVN: r4951
1993-07-21 13:43:56 -07:00
Richard Stallman
1e72f68fc5 (choose_temp_base): Try multiple variables.
(choose_temp_base): Try multiple variables.  Don't
assume that the variable points to a valid directory.

(pexecute): Handle the MS-DOS return codes correctly.
Add .exe to file name when appropriate.

From-SVN: r4822
1993-07-01 23:30:43 +00:00
Richard Stallman
8b3d02513e (DEFAULT_WORD_SWITCH_TAKES_ARG): Check for -iwithprefixbefore.
(option_map): Add --include-with-prefix-before and
--include-with-prefix-after.

From-SVN: r4782
1993-06-28 04:54:15 +00:00
Richard Stallman
fff26804c9 (translate_options): `*' inhibits warning of extraneous arg.
From-SVN: r4758
1993-06-26 19:43:09 +00:00
Doug Evans
5e3f49d1ce (option_map): Add missing comma.
From-SVN: r4740
1993-06-26 07:14:53 +00:00
Richard Stallman
f7f1b4a40e (option_map): Make --version alias for -dumpversion.
From-SVN: r4721
1993-06-24 04:32:25 +00:00
Richard Stallman
cc198f10a7 (translate_options): Don't assume option_map[j].arg_info != 0.
From-SVN: r4658
1993-06-10 17:47:20 +00:00
Richard Stallman
e1027c772e (translate_options): Don't assume option_map[j].arg_info != 0.
From-SVN: r4644
1993-06-07 03:41:21 +00:00
Richard Stallman
c648ab8a1a (process_command): When GCC_EXEC_PREFIX is defined and tooldir is relative...
(process_command): When GCC_EXEC_PREFIX is defined and
tooldir is relative, add it to search path in addition to standard
directory rather than instead of.

From-SVN: r4588
1993-05-28 22:55:11 +00:00
Richard Stallman
8e06366547 (option_map): Renamed --version to --use-version.
From-SVN: r4462
1993-05-14 22:10:11 +00:00
Ian Lance Taylor
0ad5835e0b If SMALL_ARG_MAX is defined don't pass non-directories in environment
From-SVN: r4278
1993-04-29 21:11:44 +00:00
Richard Stallman
4782d5b5ad (default_compilers): Inhibit -D__OPTIMIZE__ if -O0.
From-SVN: r4272
1993-04-29 16:39:56 +00:00
Ian Lance Taylor
3b39b94f84 Base WORD_SWITCH_TAKES_ARG on new macro DEFAULT_WORD_SWITCH_TAKES_ARG
From-SVN: r4247
1993-04-27 14:58:13 +00:00
Richard Kenner
2a353d3a5e (putenv): Make result type void.
(main): Don't call signal for undefined signal names.

From-SVN: r4139
1993-04-13 17:17:19 -04:00
Jim Wilson
8cacec76fd (library_prefix): Delete variable.
(process_command): Delete uses of library_prefix.
(do_spec_1, D case): Delete use of library_prefix.

From-SVN: r4105
1993-04-12 12:50:01 -07:00
Richard Stallman
ac50959202 (link_command_spec): New option -nostartfiles.
From-SVN: r3690
1993-03-10 07:11:33 +00:00
Richard Stallman
f2faf549d4 Handle long options by translation to old-style ones.
(translate_options): New function.
(option_map): New table.

From-SVN: r3686
1993-03-09 05:47:14 +00:00
Jim Wilson
1d23c208bd (main): Put argv[0] in collect_obstack instead of programname.
From-SVN: r3655
1993-03-05 09:47:54 -08:00
Michael Meissner
1763b229fd Add missing \ before return inside string.
From-SVN: r3627
1993-03-04 15:39:20 +00:00
Jim Wilson
afcd8a020f (main): Truncate programname to what is after last slash.
From-SVN: r3612
1993-03-02 13:19:37 -08:00
Richard Stallman
4b3f0a5b28 (link_command_spec): Do nothing if -fsyntax-only.
From-SVN: r3598
1993-03-02 19:57:36 +00:00
Richard Stallman
dd30a199df (process_command): Fix typo in last change.
From-SVN: r3260
1993-01-18 05:34:03 +00:00
Brendan Kehoe
cb25ac928c With previous change, don't fail on `-l'.
From-SVN: r3253
1993-01-15 16:30:53 -05:00
Brendan Kehoe
48fb792a91 gcc.c (process_command): Only accept input files which exist and can be read...
* gcc.c (process_command): Only accept input files which exist and
        can be read; prevent link phase if an input file was rejected.
        (error_count): Make into a static global variable.

From-SVN: r3249
1993-01-14 19:19:25 -05:00
Ian Lance Taylor
53cc3d6317 Use TOOLDIR_BASE_PREFIX, not TOOLDIR_PREFIX
From-SVN: r3227
1993-01-13 22:37:01 +00:00
Paul Eggert
a1c3776604 # Fix misspellings in comments.
From-SVN: r3182
1993-01-10 22:33:45 +00:00
Richard Stallman
4cf3301cf5 (lookup_compiler): Fix special code for `-' suffix.
From-SVN: r3174
1993-01-09 15:10:30 +00:00
Richard Kenner
3ae7de4ed7 (putenv_from_prefixes): Use PATH_SEPARATOR.
Properly use JUST_MACHINE_SUFFIX when desired; always make path the same as
find_a_file will use.

From-SVN: r3065
1993-01-03 07:28:19 -05:00
Richard Stallman
f18fd95634 (TOOLDIR_PREFIX): Define if not defined.
(tooldir_prefix, tooldir_base_prefix): New variables.
(main): Set tooldir_prefix.  Add it (plus `bin' or `lib') to search paths.

From-SVN: r3057
1993-01-02 09:53:53 +00:00
Richard Stallman
3279bba682 (do_spec_1): Propagate failure from recursive calls.
From-SVN: r3033
1992-12-31 22:38:58 +00:00
Jim Wilson
a99bf70c25 (input_from_pipe): New variable.
(do_spec): Set/clear input_from_pipe as appropriate.  Translate %|
to "-" if input_from_pipe is true.

From-SVN: r3018
1992-12-31 13:05:40 -08:00
Tom Wood
fb2660307d (temp_names): New variable.
(do_spec_1): Rewrite MKTEMP_EACH_FILE for %g/%u/%U.
	(choose_temp_base): Abort if mktemp yields a null string.

From-SVN: r2847
1992-12-08 13:34:05 +00:00
Richard Stallman
49003ff65a (LINK_LIBGCC_SPECIAL_1): New parameter.
From-SVN: r2818
1992-11-30 23:03:05 +00:00
Richard Stallman
b9490a6ec1 (default_compilers): Pass -i* after -U*.
(default_compilers): When running cpp,
move %{D*} and %{U*} (in that order) just before %i.

(do_spec_1): Handle MKTEMP_EACH_FILE.

From-SVN: r2779
1992-11-23 22:44:40 +00:00
Richard Stallman
05d32ae0e0 (process_command): Check that we have enough arguments.
From-SVN: r2636
1992-10-28 21:20:57 +00:00
Richard Stallman
2484b6d2a9 (process_command): Discard after first space in spec_version.
From-SVN: r2583
1992-10-24 00:50:54 +00:00
Jim Wilson
ebb8e0c6c6 (WORD_SWITCH_TAKES_ARG): Handle -Ttext and -Tbss in addition to -Tdata.
From-SVN: r2529
1992-10-20 13:54:08 -07:00
Richard Stallman
0e14ddbcfc Comment added.
From-SVN: r2146
1992-09-17 19:47:09 +00:00
Richard Stallman
f396d2783c (SIGNED_CHAR_SPEC): Use #if rather than ?...
(SIGNED_CHAR_SPEC): Use #if rather than ?: to handle
setting the default SIGNED_CHAR_SPEC macro, since the 3.0 version
of the MIPS C compiler doesn't like ?: in initializers.

From-SVN: r2145
1992-09-17 19:45:49 +00:00
Richard Stallman
3b9b4d3fa6 (main): No program should return the error_count!
Return 2 if failure due to signal, 1 if just errors.
(execute): Increment signal_count.

From-SVN: r2068
1992-09-07 06:04:38 +00:00
Richard Stallman
cc6fc442d8 (process_command): Correct for spaz by patch, installing last change.
From-SVN: r2045
1992-09-03 08:40:32 +00:00
Richard Stallman
058d85217a (main): Use new loop var J to avoid conflict with I.
From-SVN: r2043
1992-09-03 07:15:21 +00:00
Richard Stallman
20eec2c268 (default_compilers): Add missing comma between strings, so that traditional compilers can compile gcc.c.
(default_compilers): Add missing comma between strings, so
that traditional compilers can compile gcc.c.
(main): Don't pass strcpy or strlen a NULL pointer if some of the
spec strings in default_compilers are NULL.
(validate_all_switches): Don't dereference a NULL pointer if some of
the spec strings in defalut_compilers are NULL.

From-SVN: r2039
1992-09-02 23:19:20 +00:00
Brendan Kehoe
301a5c0b57 (default_compilers, ".C" and ".ii"): Pass `+e*' into cc1plus.
(process_command): Allow +e[012] to be passed down into cc1plus.

From-SVN: r2036
1992-09-02 16:10:54 -04:00
Richard Stallman
ec32609a58 (struct compiler): spec field is now array of 4 elements.
(read_specs): Clear the entire new element of compilers.
(lookup_compiler): Copy all of spec array.  Check element 0 for @.
(main): Concatenate all elements of compiler spec.
(validate_all_switches): Validate from all elements of compiler spec.
(default_compilers): Split CPP commands into separate strings.

From-SVN: r2005
1992-08-31 20:00:19 +00:00
Michael Meissner
4401b31c0e Add %U to give last %u name.
From-SVN: r1942
1992-08-25 17:40:04 +00:00
Richard Stallman
8436fe3532 (process_command): Don't set verbose_flag if they make a
typo (e.g., `-v-E'); only when it's exactly "-v".

From-SVN: r1940
1992-08-25 03:07:57 +00:00
Richard Kenner
f8d97cf472 Put include of stdio.h after GCC header files (for i860-stardent-sysv4).
From-SVN: r1905
1992-08-20 05:58:18 -04:00
Richard Stallman
2ef32c884e (process_command): In second loop over all switches,
don't increment I for switches that don't have separate arguments.

From-SVN: r1856
1992-08-15 07:49:48 +00:00
Tom Wood
26ba9d2636 Really install NULL_PTR change
From-SVN: r1854
1992-08-15 00:20:19 +00:00
Tom Wood
d887e8089b (do_spec_1): Add %u.
(default_compilers): For output of as when -c is not used, use %u
	rather than %g so each object filename will be unique.

(NULL_PTR): Use the same definition as
	rtl.h and tree.h.

From-SVN: r1845
1992-08-14 22:51:05 +00:00
Richard Stallman
a6bf434760 Improve err msg for unknown config.
(read_specs): Cast args of xmalloc and read to unsigned.

From-SVN: r1792
1992-08-11 08:26:06 +00:00
Richard Stallman
5f31db15fb (default_compilers): For output of as when -c is not used,
use %g, rather than %b, because the file is going to be deleted anyway.

From-SVN: r1783
1992-08-07 07:17:12 +00:00
Richard Stallman
7ede72fcf2 (link_command_spec): Accept -static but do nothing with it.
From-SVN: r1715
1992-07-29 22:55:25 +00:00
Richard Stallman
c9ebacb820 (process_command): Handle -Wl,' and -Wa,'.
(do_spec_1): Handle %Y.
(default_compilers): Use %Y in assembler commands.

From-SVN: r1637
1992-07-20 02:49:26 +00:00
Charles Hannum
ae04227b3a entered into RCS
From-SVN: r1511
1992-07-08 03:40:47 +00:00
Richard Kenner
7471ffd8a6 *** empty log message ***
From-SVN: r1478
1992-07-06 16:25:01 -04:00
Richard Kenner
906c4e36c6 *** empty log message ***
From-SVN: r1473
1992-07-06 16:04:13 -04:00
Richard Stallman
ac88fc9055 *** empty log message ***
From-SVN: r1352
1992-06-30 01:52:47 +00:00
Richard Stallman
7558fb2af5 *** empty log message ***
From-SVN: r1304
1992-06-27 05:23:20 +00:00
Richard Stallman
00f7e60311 *** empty log message ***
From-SVN: r1187
1992-06-10 21:23:54 +00:00
Richard Stallman
6196c52839 *** empty log message ***
From-SVN: r1182
1992-06-08 03:09:12 +00:00
Richard Stallman
efb1933019 *** empty log message ***
From-SVN: r1172
1992-06-06 19:22:12 +00:00
Richard Stallman
14be024e77 *** empty log message ***
From-SVN: r1076
1992-05-25 02:25:35 +00:00
Richard Stallman
4c64aaf6a4 *** empty log message ***
From-SVN: r1072
1992-05-24 06:33:48 +00:00
Richard Stallman
607a4f7de3 *** empty log message ***
From-SVN: r1065
1992-05-23 21:04:29 +00:00
Richard Stallman
8eebb25825 *** empty log message ***
From-SVN: r983
1992-05-15 02:18:01 +00:00
Richard Stallman
2dcb563f6c *** empty log message ***
From-SVN: r945
1992-05-09 07:00:44 +00:00
Richard Stallman
6dc42e49d3 *** empty log message ***
From-SVN: r930
1992-05-07 06:41:23 +00:00
Richard Stallman
f6ec7e54c8 *** empty log message ***
From-SVN: r870
1992-05-03 21:39:50 +00:00
Richard Stallman
59014d0a6f *** empty log message ***
From-SVN: r678
1992-04-04 08:44:53 +00:00
Per Bothner
2378088aa6 *** empty log message ***
From-SVN: r649
1992-03-31 14:12:10 -08:00
Richard Stallman
b3865ca9f8 *** empty log message ***
From-SVN: r551
1992-03-21 22:50:43 +00:00
Richard Stallman
004fd4d55e *** empty log message ***
From-SVN: r459
1992-03-12 19:24:40 +00:00
Richard Stallman
ed1f651bed Initial revision
From-SVN: r262
1992-02-01 05:15:32 +00:00