Commit Graph

17233 Commits

Author SHA1 Message Date
Jason Merrill 9e30c37826 update
From-SVN: r20516
1998-06-15 19:51:13 -04:00
Michael Meissner 3ac3da71e2 Reorder tests in last change for speed
From-SVN: r20513
1998-06-15 16:32:00 +00:00
Michael Meissner ddc8bed248 Do not do src->dest copy if register would not be allocated a normal register
Co-Authored-By: Jim Wilson <wilson@cygnus.com>

From-SVN: r20512
1998-06-15 14:28:02 +00:00
Jim Wilson 3bd89472d1 Fix merging error with formerly cygnus local change.
* c-decl.c (shadow_tag_warned): Use specs not declspecs in for loop.

From-SVN: r20511
1998-06-15 06:22:59 -07:00
Michael Meissner a7db2896a5 Undo June 11th change
From-SVN: r20510
1998-06-15 12:33:51 +00:00
Dave Love 63393d8cc7 Update versions to 0.5.23.
From-SVN: r20509
1998-06-15 07:57:08 +00:00
Craig Burley 3f1e429275 g77spec.c (lang_specific_driver): Print out egcs version info first...
Sat Jun 13 03:13:18 1998  Craig Burley  <burley@gnu.org>
	* g77spec.c (lang_specific_driver): Print out egcs
	version info first, to be compatible with what some
	test facilities expect.

From-SVN: r20508
1998-06-15 07:54:39 +00:00
Craig Burley f30bc2e7f5 Makefile.in (install): Don't install if $(libsubdir) is empty...
Sat Jun 13 03:46:40 1998  Craig Burley  <burley@gnu.org>
	* Makefile.in (install): Don't install if $(libsubdir)
	is empty; issue a diagnostic saying top-level Makefile
	must pass it in instead, and exit.
	* Makefile.in (g2c.h): Rename from f2c.h.
	* Makefile.in, libF77/Makefile.in, libI77/Makefile.in,
	libU77/Makefile.in: Rewrite config and var assignment
	sections to be even more minimal than before, and to
	more clearly documented what macros are expected to be
	set and to what sorts of values.  Eliminate CROSS and
	related stuff, since there's no such things as CROSS
	in egcs.  Rename GCC_FOR_TARGET to CC throughout.
	* Makefile.in (stamp-libi77, stamp-libf77, stamp-libu77):
	Eliminate CROSS.
	* configure.in: Eliminate CROSS.
	Rename libf2c.a and f2c.h to libg2c.a and g2c.h,
	normalize and simplify g77/libg2c build process:
	* Makefile.in: Remove all stuff pertaining to
	installation, cleaning, and so on.  Parent Makefile
	does all that now.  Pass F2C_H_DIR,
	G2C_H_DIR, and GCC_H_DIR, the pathnames for the
	directories containing f2c.h, g2c.h, and other
	#include files, to subdirectory Makefiles.
	(stamp-libf77, stamp-libi77, stamp-libu77):
	Don't specify `-f Makefile' anymore, it's not needed
	now that subdirectory makefile's from netlib are
	renamed to makefile.netlib in g77 source (and to
	makefile.ori by configuration process, in case they're
	still around somehow).
	(stamp-libe77): Don't make libE77 dir unless it doesn't
	exist, if it does just delete all objects in it.
	Compile using $(GCC_FOR_TARGET), not $(CC).
	(rebuilt): Remove this and all subordinate targets,
	as parent Makefile now handles all that.
	(*clean): Remove.
	* configure.in (Pad_UDread, ALWAYS_FLUSH, WANT_LEAD_0):
	Remove these and commentary to new f2c.h file.
	AC_OUTPUT g2c.h instead of f2c.h.  Remove old commentary
	regarding concatenation.
	* g2c.h.in: Rename from f2c.h.in, add appropriate
	commentary.
	* f2c.h: New file, a wrapper for g2c.h that does
	libg2c-specific stuff.
	* libF77/Makefile.in, libI77/Makefile.in, libU77/Makefile.in:
	Change $(ALL_CFLAGS) to use F2C_H_DIR, G2C_H_DIR, and GCC_H_DIR
	macros.  Remove F2C_H macro, replace use with explicit
	dependencies on f2c.h and g2c.h.
	(*clean): Remove.

From-SVN: r20507
1998-06-15 07:52:05 +00:00
Craig Burley 95a1b67649 Restore circa-0.5.22 capabilities of `g77' driver:
Thu May 28 21:32:18 1998  Craig Burley  <burley@gnu.org>
	Restore circa-0.5.22 capabilities of `g77' driver:
	* Make-lang.in (g77spec.o): Depend on f/version.h.
	(g77version.o): New rule to compile g77 version info.
	(g77$(exeext)): Depend on and link in g77version.o.
	* g77spec.c: Rewrite to be more like 0.5.22 version
	of g77.c, making filtering of command line smarter
	so mixed Fortran and C (etc.) can be compiled, verbose
	version info can be obtained, etc.
	* lang-specs.h (f77-version): New "language" to support
	"g77 -v" command under new gcc 2.8 regime.
	* lex.c (ffelex_file_fixed): If -fnull-version, just
	substitute a "source file" that prints out version info.
	* top.c, top.h: Support -fnull-version.
	* lang-specs.h: Use "%O" instead of OO macro to specify
	object extension.  Remove old stringizing cruft.
	* Make-lang.in (g77.c, g77spec.o, g77.o, g77$(exeext),
	g77-cross$(exeext), f771,
	$(srcdir)/f/g77.info, $(srcdir)/f/g77.dvi,
	$(srcdir)/f/intdoc.texi,
	f77.install-common, f77.install-info, f77.install-man,
	f77.uninstall, $(G77STAGESTUFF), f77.stage1, f77.stage2,
	f77.stage3, f77.stage4, f77.distdir): Don't do anything
	unless user specified "f77" or "F77" in $LANGUAGES either
	during configuration or explicitly.  For convenience of
	various tests and to work around lack of the assignment
	"LANGUAGES=$(BOOT_LANGUAGES)" in the "make stage1" command
	of "make bootstrap" in gcc, use a touch file named "lang-f77"
	to communicate whether this is the case.
	* Make-lang.in (F77_FLAGS_TO_PASS): Delete this macro,
	replace with minimal expansion of its former self in
	each of the two instances where it was used.
	* Makefile.in (HOST_CC): Delete this definition.
	* com.c (index, rindex): Delete these declarations.
	* proj.h: (isascii): Delete this.
	* Make-lang.in (f77.install-common): Warn if `f77-install-ok'
	flag-file exists, since it no longer triggers any activity.
	Rename libf2c.a and f2c.h to libg2c.a and g2c.h,
	normalize and simplify g77/libg2c build process:
	* Make-lang.in: Remove all support for overwriting
	/usr/bin/f77 etc., or whatever the actual names are
	via $(prefix) and $(local_prefix).  (g++ overwrites
	/usr/bin/c++, but then it's often the only C++ compiler
	on the system; f77 often exists on systems that are
	installing g77.)
	(f77.realclean): Remove obsolete target.
	(g77.c, g77$(exeext)): Minor changes to look more like g++'s
	stuff.
	(f771): Now built with srcdir=gcc/f, not srcdir=gcc, to be
	more like g++ and such.
	(f/Makefile): Removed, as g++ doesn't need this rule.
	(f77.install-common): No longer install f77, etc.
	(f77.install-man): No longer install f77.1.
	(f77.uninstall): No longer uninstall f77, f77.1, etc.
	(f77.stage1, f77.stage2, f77.stage3, f77.stage4): Do work
	only if "f77" appears in $(LANGUAGES).
	(Note: gcc's Makefile.in's bootstrap target should set
	LANGUAGES=$(BOOT_LANGUAGES) when making the stage1 target.)
	* Makefile.in: Update vis-a-vis gcc/cp/Makefile.in.
	(none): Remove.
	(g77-only): Relocate.
	(all.indirect, f771, *.o): Now assumes current directory
	is this dir (gcc/f), not the parent directory.
	(TAGS): Remove "echo 'parse.y,0'  >> TAGS ;" line.
	* config-lang.in: Delete commented-out code.
	Fix stagestuff definition.  Add more stuff to
	diff_excludes definition.  Don't create any directories.
	Set outputs to f/Makefile, to get variable substition
	to happen (what does that really do, anyway?!).
	* g77spec.c: Rename libf2c to libg2c.
	* com.h: Remove all of the gcc back-end decls,
	since egcs should have all of them correct.
	* com.c: Include "proj.h" before anything else,
	as that's how things are supposed to work.
	* ste.c: Ditto.
	* bad.c: Include "flags.j" here, since some diagnostics
	check flag_pedantic_errors.
	* Makefile.in (f/*.o): Rebuild dependencies via
	deps-kinda.
	* output.j: New source file.
	* Make-lang.in (F77_SRCS): Update accordingly.
	* Makefile.in (OUTPUT_H): Ditto.
	(deps-kinda): Ditto.
	* com.c: Include "output.j" here.
	* lex.c: Ditto.

From-SVN: r20506
1998-06-15 07:37:33 +00:00
Vladimir Makarov e74e8c843a rs6000.c (output_prolog): Change locations and directions of saving and restoring arguments of main on...
* config/rs6000/rs6000.c (output_prolog): Change locations and
	directions of saving and restoring arguments of main on the stack.

From-SVN: r20505
1998-06-15 07:25:09 +00:00
Jeffrey A Law d61d494a73 Bump for snapshot
From-SVN: r20503
1998-06-15 01:16:32 -06:00
Jeff Law ae887f4040 Daily bump.
From-SVN: r20502
1998-06-14 18:45:02 -06:00
Jeff Law 04bd754a32 Daily bump.
From-SVN: r20501
1998-06-13 18:45:02 -06:00
Mark Mitchell 79ad62b257 class.c (alter_access): Accept a BINFO explaining how to get from the entity whose accessed is being...
* class.c (alter_access): Accept a BINFO explaining how to get
	from the entity whose accessed is being altered to the type doing
	the altering.
	(handle_using_decl): New function containing code split out from ...
	(finish_struct_1): Here.

From-SVN: r20500
1998-06-13 23:48:07 +00:00
Mark Mitchell 8f259df3c0 cp-tree.h (complete_type_or_else): Declare.
* cp-tree.h (complete_type_or_else): Declare.
	* init.c (build_new_1, build_delete): Use it.
	* typeck.c (require_complete_type): Use complete_type, rather than
	expanding it inline.
	(complete_type_or_else): New function.
	(build_component_ref): Use it.
	(pointer_int_sum): Make sure the type pointed to is complete.
	(pointer_diff): Likewise.

From-SVN: r20499
1998-06-13 23:45:18 +00:00
Mark Mitchell 581d38d0ba pt.c (for_each_template_parm): Traverse the TYPE_CONTEXT for types.
* pt.c (for_each_template_parm): Traverse the TYPE_CONTEXT for
	types.

From-SVN: r20498
1998-06-13 23:35:46 +00:00
Mark Mitchell 5e7955289f search.c (get_matching_virtual): Note that member templates cannot override virtual functions.
* search.c (get_matching_virtual): Note that member templates
	cannot override virtual functions.

From-SVN: r20497
1998-06-13 23:34:56 +00:00
Jeff Law a61e1825f5 Initial revision
From-SVN: r20494
1998-06-13 13:52:15 -06:00
Richard Henderson 3bde0154ef Kill wrong ev6 comment.
From-SVN: r20466
1998-06-13 08:36:35 -07:00
Krister Walfridsson a08432bd45 netbsd.h (DEFAULT_PCC_STRUCT_RETURN): Undefine before redefining it.
* config/sparc/netbsd.h (DEFAULT_PCC_STRUCT_RETURN): Undefine before
        redefining it.

From-SVN: r20454
1998-06-13 06:09:41 -07:00
Jeff Law eef4ba6139 Daily bump.
From-SVN: r20451
1998-06-12 18:45:02 -06:00
Doug Evans 416db27133 (ENDFILE_SPEC): Add -lgloss.
From-SVN: r20450
1998-06-12 22:54:50 +00:00
Doug Evans a4ea8d9781 * m32r/m32r.h (STARTFILE_SPEC): Delete crtsysc.o.
From-SVN: r20445
1998-06-12 18:10:23 +00:00
Brendan Kehoe f2e48b67c8 pt.c (check_explicit_specialization): If DECLARATOR turned into an error_mark_node from lookup_template_function...
* pt.c (check_explicit_specialization): If DECLARATOR turned into
	an error_mark_node from lookup_template_function, return the same.
	(determine_specialization): Also make sure TEMPLATE_ID isn't an
	error_mark_node, before we try to read its operands.
	* decl.c (grokdeclarator): If we got an error_mark_node from
	check_explicit_specialization, just return it right back.

From-SVN: r20444
1998-06-12 08:56:22 -04:00
Kaveh R. Ghazi 38831dfe51 Mips warning fixes:
* mips.c (small_int): Mark parameter `mode' with ATTRIBUTE_UNUSED.
        (large_int): Likewise.
        (pc_or_label_operand): Likewise.
        (call_insn_operand): Likewise.
        (consttable_operand): Likewise.
        (m16_uimm3_b): Likewise.
        (m16_simm4_1): Likewise.
        (m16_nsimm4_1): Likewise.
        (m16_simm5_1): Likewise.
        (m16_nsimm5_1): Likewise.
        (m16_uimm5_4): Likewise.
        (m16_nuimm5_4): Likewise.
        (m16_simm8_1): Likewise.
        (m16_nsimm8_1): Likewise.
        (m16_uimm8_1): Likewise.
        (m16_nuimm8_1): Likewise.
        (m16_uimm8_m1_1): Likewise.
        (m16_uimm8_4): Likewise.
        (m16_nuimm8_4): Likewise.
        (m16_simm8_8): Likewise.
        (m16_nsimm8_8): Likewise.
        (m16_usym8_4): Likewise.
        (m16_usym5_4): Likewise.
        (mips_move_1word): Change type of variable `i' from int to size_t.
        (mips_move_2words): Likewise.
        (output_block_move): Mark parameter `libname' with ATTRIBUTE_UNUSED.
        (function_arg_advance): Use HOST_PTR_PRINTF to print an address.
        (function_arg): Likewise.
        (function_arg_partial_nregs): Mark parameter `named' with
        ATTRIBUTE_UNUSED.
        (override_options): Use ISDIGIT instead of isdigit.
        (mips_output_external): Mark parameter `file' with ATTRIBUTE_UNUSED.
        (final_prescan_insn): Likewise for parameters `opvec' and `noperands'.
        (save_restore_insns): Cast HOST_WIDE_INT arguments passed to
        function `fatal' to long before printing.  Use
        HOST_WIDE_INT_PRINT_DEC in fprintf.  Both changes done several
        times in this function.
        (function_prologue): Mark parameter `size' with ATTRIBUTE_UNUSED.
        (function_epilogue): Likewise for parameters `file' and `size'.
        Print an int with "%d" not "%ld".
        (mips_select_rtx_section): Mark parameter `x' with ATTRIBUTE_UNUSED.
        (mips_function_value): Likewise for parameter `func'.
        (function_arg_pass_by_reference): Likewise for parameters `cum'
        and `named'.
        (extend_operator): Likewise for parameter `mode'
        (highpart_shift_operator): Likewise.
        * mips.md (mul_acc_si): Remove unused variable `macc'.

From-SVN: r20443
1998-06-12 12:06:29 +00:00
Mark Mitchell 2a238a974b class.c (instantiate_type): Don't treat template-ids that don't specify any template arguments as...
* class.c (instantiate_type): Don't treat template-ids that don't
	specify any template arguments as equivalent to ordinary
	identifiers.  Use OFFSET_REF instead of SCOPE_REF to refer to
	pointer-to-members for member templates.  Tidy slightly.
	* cp-tree.def (TEMPLATE_ID_EXPR): Revise documentation.
	* init.c (build_offset_ref): Handle template-ids like ordinary
	identifiers, for the most part, but store a TEMPLATE_ID_EXPR in the
	offset part of the OFFSET_REF.
	* typeck.c (build_unary_op): Change check for unknown types to
	look for OFFSET_REFs, not SCOPE_REFs.

From-SVN: r20442
1998-06-12 09:47:04 +00:00
Richard Henderson 77a45a2ea4 fold-const.c (fold): Revert last change.
* fold-const.c (fold): Revert last change.  It breaks constant
        expressions somehow.

From-SVN: r20441
1998-06-12 02:34:00 -07:00
Andreas Schwab 8d62b411cf expr.c (do_jump, [...]): When comparing complex prevent operands from being evaluated twice.
* expr.c (do_jump, case EQ_EXPR, NE_EXPR): When comparing complex
	prevent operands from being evaluated twice.

From-SVN: r20440
1998-06-12 01:26:05 +00:00
Jeff Law b91feb1811 Daily bump.
From-SVN: r20439
1998-06-11 18:45:01 -06:00
Jeffrey A Law da4ce9c2af * gcc.c-torture/execute/980612-1.c: New test.
From-SVN: r20438
1998-06-11 18:11:18 -06:00
Sergey Okhapkin 19a862359f toplev.c (lang_options): Add -remap as a preprocessor option.
8
        * toplev.c (lang_options): Add -remap as a preprocessor option.

From-SVN: r20437
1998-06-11 17:53:50 -06:00
Sergey Okhapkin cac456261b toplev.c (lang_options): Add -remap as a preprocessor option.
�
        * toplev.c (lang_options): Add -remap as a preprocessor option.

From-SVN: r20436
1998-06-11 17:53:47 -06:00
Mark Mitchell 2ee4e084b7 pt.c (is_member_template_class): New function.
* pt.c (is_member_template_class): New function.
	(push_template_decl_real): Use it.

From-SVN: r20435
1998-06-11 23:53:24 +00:00
John Wehle 9bc6d2c207 i386.md (cmpsi_1, [...]): Remove code which set CC_REVERSED since reload should ensure that the operands...
* i386.md (cmpsi_1, cmphi_1, cmpqi_1): Remove code
        which set CC_REVERSED since reload should ensure that
        the operands are already the correct type.

From-SVN: r20434
1998-06-11 17:33:35 -06:00
Benjamin Kosnik 112a70c24d friend.c (do_friend): Add support for nested classes using member functions of the enclosing class as...
8
	* friend.c (do_friend): Add support for nested classes using
 	member functions of the enclosing class as friends.
egcs bug

From-SVN: r20433
1998-06-11 20:11:55 +00:00
Benjamin Kosnik 67fe9f06fa friend.c (do_friend): Add support for nested classes using member functions of the enclosing class as...
�
	* friend.c (do_friend): Add support for nested classes using
 	member functions of the enclosing class as friends.
egcs bug

From-SVN: r20432
1998-06-11 20:11:54 +00:00
Jim Wilson fb95c8c956 Fix m68k build failure.
* except.c (expand_builtin_eh_stub): Call emit_move_insn rather than
	calling gen_rtx_SET.

From-SVN: r20431
1998-06-11 10:15:02 -07:00
David Edelsohn 9500928842 x-aix43 (AR): Delete.
* config/rs6000/x-aix43 (AR): Delete.
	(AR_FOR_TARGET_FLAGS): Add -X32_64 here.

From-SVN: r20430
1998-06-11 11:48:50 -04:00
David W. Schuler bf6f78d154 * config/i386/aix386ng.h (CPP_SPEC): Remove extraneous quote.
From-SVN: r20429
1998-06-11 09:22:41 -06:00
Jim Wilson 45cc4c096a Fix mips build error.
* mips.c (override_options): Replace word_mode with explicit
	TARGET_64BIT check.

From-SVN: r20428
1998-06-11 05:54:24 -07:00
Michael Meissner ecb75b7ab9 For regmove if we could not improve code by changing the source to the destination, copy the source to the destination directly
From-SVN: r20427
1998-06-11 11:51:52 +00:00
Dave Brolley 8e34149da2 toplev.c (lang_options): Add missing options (nostdinc, idirafter).
Thu Jun 11 10:30:09 1998  Dave Brolley  <brolley@cygnus.com>
	* toplev.c (lang_options): Add missing options (nostdinc, idirafter).

From-SVN: r20426
1998-06-11 03:51:52 -04:00
Jeff Law 90de93a0bd Daily bump.
From-SVN: r20425
1998-06-10 18:45:02 -06:00
Mark Mitchell 41efda8f53 call.c (convert_default_arg): Make global, not static.
* call.c (convert_default_arg): Make global, not static.
	(convert_arg_for_ellipsis): Split out from ...
	(build_over_call): Here.
	* cp-tree.h (convert_default_arg); Declare.
	(convert_arg_to_ellipsis): Likewise.
	(do_member_init): Remove.
	* init.c (do_member_init): Remove; this code is dead.
	(expand_member_init): Remove much of this code; it is dead.
	* typeck.c (convert_arguments): Use convert_default_arg and
	convert_arg_for_ellipsis, rather than duplicating here.
	* call.c (convert_like): Don't fail silently if
	build_user_type_conversion fails.  Always return error_mark_node
	for failure.

From-SVN: r20424
1998-06-11 00:07:24 +00:00
Mark Mitchell 8358a974b5 rtl.h (rtx_def): Improve documentation.
* rtl.h (rtx_def): Improve documentation.
	(MEM_IN_STRUCT_P): Likewise.

From-SVN: r20423
1998-06-10 23:39:46 +00:00
Graham Stott b3fbc9ad49 * c-decl.c (grokdeclarator): Remove unused variable "last".
From-SVN: r20422
1998-06-10 16:36:37 -06:00
Graham Stott e80716de42 * c-decl.c (start_decl): Correct test for -Wmain.
From-SVN: r20421
1998-06-10 16:29:04 -06:00
Jason Merrill e76e4a6842 * search.c (covariant_return_p): Complain about ambiguous base.
From-SVN: r20420
1998-06-10 17:12:16 -04:00
Jason Merrill d60ab85145 * typeck.c (build_component_ref): Diagnose ref to nested type.
From-SVN: r20419
1998-06-10 17:03:58 -04:00
Jim Wilson 3e2b9a3d25 Fix build failure when pointers smaller than integers.
* expr.c (expand_builtin_setjmp): Store const1_rtx in target.
	(expand_builtin_longjmp): Abort if value isn't const1_rtx.
	Delete code storing value in static_chain_rtx.
	(expand_builtin, case BUILT_IN_LONGJMP): Pass NULL_RTX for target
	to second expand_expr call.

From-SVN: r20418
1998-06-10 07:55:48 -07:00