Commit Graph

14459 Commits

Author SHA1 Message Date
Jason Merrill
236bdb77b5 tweak
From-SVN: r15828
1997-10-01 13:56:23 -04:00
Jason Merrill
5408ce7864 Makefile.in (g++FAQ.*): New rules.
* Makefile.in (g++FAQ.*): New rules.
	(CONFLICTS): Update.
	* g++FAQ.texi: Moved from libg++.

	* parse.y (PFUNCNAME): Only specify the type once.

From-SVN: r15827
1997-10-01 13:50:03 -04:00
Brendan Kehoe
a3f44a1337 lex.c (real_yylex): Clean up the code to fully behave the way the c-lex.c parser does for complex...
* lex.c (real_yylex): Clean up the code to fully behave the way
	the c-lex.c parser does for complex and real numbers.

From-SVN: r15826
1997-10-01 12:56:13 -04:00
Ian Lance Taylor
281de624e3 pexecute.c: Use spawn if __CYGWIN32__.
* pexecute.c: Use spawn if __CYGWIN32__.

        * pexecute.c: Include "config.h" first, as per autoconf manual
	(from Paul Eggert  <eggert@twinsun.com>).

From-SVN: r15825
1997-10-01 15:15:06 +00:00
Jeff Law
0d9011fd81 Fix typo.
From-SVN: r15824
1997-10-01 07:52:31 -06:00
Philippe De Muyter
56f21d6ffd sys_clock_.c: File renamed from system_clock_.c.
* libU77/sys_clock_.c: File renamed from system_clock_.c.
        libU77/Makefile.in, Makefile.in : Reference sys_clock_.*, not
        system_clock_.*.
        * libU77/dtime_.c (clk_tck): Try also HZ macro.
        * libU77/access.c (G77_access_0): Check malloc return value against 0,
        not NULL.
        libU77/getlog_.c, libU77/ttynam_.c, libU77/chdir_.c: Ditto.
        libU77/chmod_.c, libU77/rename_.c: Ditto.

From-SVN: r15821
1997-10-01 01:43:22 -06:00
Philippe De Muyter
3c8f617e2f * g77.c (pexecute, main): Use unlink, not remove.
From-SVN: r15820
1997-10-01 01:42:36 -06:00
Philippe De Muyter
3cbdd5fc16 x-mot3300 (XCFLAGS): Disable as's long/short jump optimisation for f/expr.o and f/stb.o.
* config/m68k/x-mot3300 (XCFLAGS): Disable as's long/short jump
        optimisation for f/expr.o and f/stb.o.

From-SVN: r15819
1997-10-01 01:41:57 -06:00
Jeff Law
82d109f263 Update to 0.5.22-19970929.
From-SVN: r15818
1997-10-01 01:28:03 -06:00
Thomas Koenig
d3878e4948 * cccp.c (expand_to_temp_buffer): Initialize all members of obuf.
From-SVN: r15817
1997-10-01 00:22:46 -06:00
Jeffrey A Law
135d84b899 * cse.c (this_insn_cc0_mode): Initialize.
From-SVN: r15816
1997-09-30 23:46:27 -06:00
Thomas Koenig
55d8971965 * haifa-sched.c: (get_block_head_tail) Remove unneeded initialization.
From-SVN: r15815
1997-09-30 23:08:31 -06:00
Richard Henderson
e9d0757e5c alpha.md (beq): For registers and ints 0-255...
* alpha.md (beq): For registers and ints 0-255, use cmpeq+bne, since
        that pair will dual-issue on the 21164 and plus+beq won't.
        (bne): Likewise for cmpeq+beq.

From-SVN: r15814
1997-09-30 23:04:30 -06:00
Jim Wilson
3f34faec1a Fix error in immediately preceeding patch.
* except.c (find_exception_handler_labels): Correct argument to free.

From-SVN: r15812
1997-09-30 16:15:58 -07:00
Brendan Kehoe
3226dac5e0 adjust date to be the old form, instead of the emacs 20.x shortened style,
for now.

From-SVN: r15811
1997-09-30 15:15:20 -04:00
Brendan Kehoe
988cea7dd5 except.c (find_exception_handler_labels): Free LABELS when we're done.
* except.c (find_exception_handler_labels): Free LABELS when we're
	done.

fixes memory leak

From-SVN: r15808
1997-09-30 14:25:09 -04:00
Jason Merrill
d770d3b33c add -Wold-style-cast
From-SVN: r15807
1997-09-30 13:49:34 -04:00
Jason Merrill
8c81598dba revert gratuitous whitespace changes
From-SVN: r15806
1997-09-30 13:47:48 -04:00
Jason Merrill
5a45bc3e5b * method.c (build_decl_overload_real): Reformat.
From-SVN: r15804
1997-09-30 11:53:04 -04:00
Jason Merrill
b7067a12bf * method.c (synthesize_method): If at_eof, determine our linkage.
From-SVN: r15803
1997-09-30 03:20:00 -04:00
Paul Eggert
4f6140be61 lex.c (real_yylex): Treat $' just like _'...
1997-09-29  Paul Eggert  <eggert@twinsun.com>

	* lex.c (real_yylex): Treat `$' just like `_', except issue a
	diagnostic if !dollars_in_ident or if pedantic.

	* lang-specs.h (@c++): -ansi no longer implies -$.

	* decl2.c (lang_decode_option):
	-traditional and -ansi now do not mess with
	dollars_in_ident.

From-SVN: r15802
1997-09-30 01:32:19 -04:00
H.J. Lu
9f6177175d Makefile.in (parse.o, decl.o): Also depend on $(srcdir)/../except.h $(srcdir)/../output.h.
Mon Sep 29 19:57:51 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)

	* Makefile.in (parse.o, decl.o): Also depend on
	$(srcdir)/../except.h $(srcdir)/../output.h.
	(decl2.o): Also depend on $(srcdir)/../expr.h ../insn-codes.h
	$(srcdir)/../except.h $(srcdir)/../output.h.
	(typeck.o, init.o): Also depend on $(srcdir)/../expr.h
	../insn-codes.h.

	* call.c, cp-tree.h, decl.c, tree.c: Finish prototyping.

	* expr.c (cplus_expand_expr): Make it static.

	* decl2.c, init.c, typeck.c: Include "expr.h".
	(expand_expr): Use proper values when calling the function.

From-SVN: r15801
1997-09-29 23:36:39 -04:00
Jeffrey A Law
3a6eabfad6 * version.c: Bump for snapshot.
From-SVN: r15795
1997-09-29 14:02:27 -06:00
Jason Merrill
0c4b14c4d3 [multiple changes]
Mon Sep 29 11:05:54 1997  Alexandre Oliva  <oliva@dcc.unicamp.br>

	* lang-options.h: new -Wold-style-cast flag.
	* cp-tree.h (warn_old_style_cast): new variable.
	* decl2.c (warn_old_style_cast): ditto.
	(lang_decode_option): support -Wold-style-cast.
	(reparse_absdcl_as_casts): produce old-style-cast warning.

Mon Sep 29 09:20:53 1997  Benjamin Kosnik  <bkoz@rhino.cygnus.com>

	* decl.c (cp_finish_decl): Allow expand_aggr_init to set
 	TREE_USED, reset value based on already_used.

	* init.c (expand_member_init): Revert change.

From-SVN: r15793
1997-09-29 15:05:04 -04:00
Jason Merrill
974c50f907 flow.c (find_basic_blocks): Mark calls as potentially jumping to the EH labels.
* flow.c (find_basic_blocks): Mark calls as potentially jumping
        to the EH labels.

From-SVN: r15792
1997-09-29 10:49:57 -06:00
Jeffrey A Law
2b67aa29e5 * intdoc.c (main): Remove unused attribute for main's arguments.
From-SVN: r15791
1997-09-29 10:35:19 -06:00
Jason Merrill
893de33c13 cp-tree.h, [...]: Lose DECL_C_STATIC and DECL_PUBLIC.
* cp-tree.h, decl.c, decl2.c, pt.c:
 	Lose DECL_C_STATIC and DECL_PUBLIC.  Don't pretend statics are public.

	* decl2.c (lang_decode_option): Add missing ;.

From-SVN: r15789
1997-09-29 12:08:34 -04:00
Jeffrey A Law
9b16d2c4ef configure.in: Substitute for "install" too.
* configure.in: Substitute for "install" too.
        * configure: Rebuilt.

From-SVN: r15788
1997-09-29 10:00:50 -06:00
Aaron Jackson
b1e3ddfd29 Makefile.in (bootstrap-lean): New target.
* Makefile.in (bootstrap-lean): New target.
        * gcc/Makefile.in (bootstrap-lean, compare-lean): New targets.

From-SVN: r15786
1997-09-29 00:37:11 -06:00
Richard Henderson
c02f035f40 alias.c (base_alias_check): Two symbols can conflict if they are accessed via AND.
* alias.c (base_alias_check): Two symbols can conflict if they
        are accessed via AND.
        (memrefs_conflict_p): Likewise.

From-SVN: r15785
1997-09-29 00:21:18 -06:00
Richard Henderson
7a14fdc538 alpha.h (SETUP_INCOMING_VARARGS): Emit a blockage insn after flushing argument registers to the stack.
* alpha.h (SETUP_INCOMING_VARARGS): Emit a blockage insn
        after flushing argument registers to the stack.

From-SVN: r15784
1997-09-29 00:18:28 -06:00
Richard Henderson
6662a38d28 * Makefile.in (mostlyclean): Remove .regmove files.
From-SVN: r15783
1997-09-29 00:16:21 -06:00
Jason Merrill
f34471094c * libgcc2.c (__throw): Fix thinko.
From-SVN: r15781
1997-09-28 22:02:26 -04:00
Mark Mitchell
37f6b6bfd2 cplus-dem.c (demangle_template): Add new parameter.
Sun Sep 28 12:00:52 1997  Mark Mitchell  <mmitchell@usa.net>

        * cplus-dem.c (demangle_template): Add new parameter.  Handle new
        template-function mangling.
        (consume_count_with_underscores): New function.
        (demangle_signature): Handle new name-mangling scheme.

From-SVN: r15780
1997-09-28 15:59:54 -04:00
Mark Mitchell
a3a5b5b7bf cplus-dem.c (demangle_template): Add new parameter.
Sun Sep 28 12:00:52 1997  Mark Mitchell  <mmitchell@usa.net>

        * cplus-dem.c (demangle_template): Add new parameter.  Handle new
        template-function mangling.
        (consume_count_with_underscores): New function.
        (demangle_signature): Handle new name-mangling scheme.

From-SVN: r15778
1997-09-28 15:37:05 -04:00
Jason Merrill
a98d45ff1f new tests and adjustments for explicit function template qualification
From-SVN: r15777
1997-09-28 15:26:50 -04:00
Jason Merrill
905a881f36 [multiple changes]
Sat Sep 27 16:48:00 1997  Jason Merrill  <jason@yorick.cygnus.com>

	* std/complext.h: Lose injection decls.
	* std/fcomplex.h: Likewise.
	* std/dcomplex.h: Likewise.
	* std/ldcomplex.h: Likewise.

Sat Sep 27 16:47:35 1997  Mark Mitchell  <mmitchell@usa.net>

	* std/complext.h: Declare templates before making them
	friends.  Use new friend <> syntax.
	* std/complext.cc: Don't rely on guiding declarations.
	* std/fcomplex.h: Use new friend <> syntax.
	* std/dcomplex.h: Likewise.
	* std/ldcomplex.h: Likewise.

From-SVN: r15776
1997-09-28 15:21:52 -04:00
Mark Mitchell
920253a3bc iomanip.h: Use new friend <> syntax.
Sun Sep 28 12:09:04 1997  Mark Mitchell  <mmitchell@usa.net>

        * iomanip.h: Use new friend <> syntax.

From-SVN: r15775
1997-09-28 15:18:16 -04:00
Jason Merrill
386b8a85a6 [multiple changes]
Sat Sep 27 16:22:48 1997  Jason Merrill  <jason@yorick.cygnus.com>

	* friend.c (do_friend): Disable injection for all template-derived
 	decls.
	* decl2.c (lang_decode_option): Handle -fguiding-decls.
	* parse.y (notype_template_declarator): New nonterminal.
	(direct_notype_declarator): Use it.
	(complex_direct_notype_declarator): Likewise.
	(object_template_id): Accept any kind of identifier after TEMPLATE.
	(notype_qualified_id): Don't add template declarators here.

Sat Sep 27 16:21:58 1997  Mark Mitchell  <mmitchell@usa.net>

        * call.c (add_template_candidate): Add explicit_targs parameter.
        (build_scoped_method_call): Use it.
        (build_overload_call_real): Likewise.
        (build_user_type_conversion_1): Likewise.
        (build_new_function_call): Likewise.
        (build_object_call): Likewise.
        (build_new_op): Likewise.
        (build_new_method_call): Likewise.
        (build_new_function_call): Handle TEMPLATE_ID_EXPR.
        (build_new_method_call): Likewise.

        * class.c (finish_struct_methods): Add specialization pass to
        determine which methods were specializing which other methods.
        (instantiate_type): Handle TEMPLATE_ID_EXPR.

        * cp-tree.def (TEMPLATE_ID_EXPR): New tree code.

        * cp-tree.h (name_mangling_version): New variable.
	(flag_guiding_decls): Likewise.
        (build_template_decl_overload): New function.
        (begin_specialization): Likewise.
        (reset_specialization): Likewise.
        (end_specialization): Likewise.
        (determine_explicit_specialization): Likewise.
        (check_explicit_specialization): Likewise.
        (lookup_template_function): Likewise.
        (fn_type_unification): Add explicit_targs parameter.
        (type_unification): Likewise.

        * decl.c (duplicate_decls): Add smarts for explicit
        specializations.
        (grokdeclarator): Handle TEMPLATE_ID_EXPR, and function
        specializations.
        (grokfndecl): Call check_explicit_specialization.

        * decl2.c (lang_decode_option): Handle -fname-mangling-version.
        (build_expr_from_tree): Handle TEMPLATE_ID_EXPR.
        (check_classfn): Handle specializations.

        * error.c (dump_function_name): Print specialization arguments.

	* friend.c (do_friend): Don't call pushdecl for template
        instantiations.

        * init.c (build_member_call): Handle TEMPLATE_ID_EXPR.

        * lang-options.h: Add -fname-mangling-version, -fguiding-decls,
	and -fno-guiding-decls.

        * lex.c (identifier_type): Return PFUNCNAME for template function
        names.

        * method.c (build_decl_overload_real): New function.
        (build_template_parm_names): New function.
        (build_overload_identifier): Use it.
        (build_underscore_int): New function.
        (build_overload_int): Use it.  Add levels for template
        parameters.
        (build_overload_name): Likewise.  Also, handle TYPENAME_TYPEs.
        (build_overload_nested_names): Handle template type parameters.
        (build_template_decl_overload): New function.

        * parse.y (YYSTYPE): New ntype member.
        (nested_name_specifier): Use it.
        (nested_name_specifier_1): Likewise.
        (PFUNCNAME): New token.
        (template_id, object_template_id): New non-terminals.
        (template_parm_list): Note specializations.
        (template_def): Likewise.
        (structsp): Likewise.
        (fn.def2): Handle member template specializations.
        (component_decl_1): Likewise.
        (direct_notype_declarator): Handle template-ids.
        (component_decl_1): Likewise.
        (direct_notype_declarator): Handle template-ids.
        (primary): Handle TEMPLATE_ID_EXPR, and template-ids.

        * pt.c (processing_specializations): New variable.
        (template_header_count): Likewise.
        (type_unification_real): New function.
        (processing_explicit_specialization): Likewise.
        (note_template_header): Likewise.
        (is_member_template): Handle specializations.
        (end_template_decl): Call reset_specialization.
        (push_template_decl): Handle member template specializations.
        (tsubst): Likewise.
        (tsubst_copy): Handle TEMPLATE_ID_EXPR.
        (instantiate_template): Handle specializations.
        (instantiate_decl): Likewise.
        (fn_type_unification): Handle explicit_targs.
        (type_unification): Likewise.  Allow incomplete unification
        without an error message, if allow_incomplete.
        (get_bindings): Use new calling sequence for fn_type_unification.

        * spew.c (yylex): Handle PFUNCNAME.

        * tree.c (is_overloaded_fn): Handle TEMPLATE_ID_EXPR.
        (really_overloaded_fn): Likewise.
        (get_first_fn): Handle function templates.

        * typeck.c (build_x_function_call): Use really_overloaded_fn.
        Handle TEMPLATE_ID_EXPR.
        (build_x_unary_op): Likewise.
        (build_unary_op): Likewise.
        (mark_addressable): Templates whose address is taken are marked
        as used.

From-SVN: r15774
1997-09-28 15:16:59 -04:00
Jason Merrill
e741306e3c * libio.h: Don't use _IO_LOCK_T if it's not defined.
From-SVN: r15773
1997-09-28 15:08:43 -04:00
Jason Merrill
72b0b53ec1 update
From-SVN: r15772
1997-09-28 15:02:46 -04:00
Philippe De Muyter
adfc539e94 flow.c (print_rtl_with_bb): Cast alloca return values for variables start and end.
* flow.c (print_rtl_with_bb): Cast alloca return values for variables
        start and end.

From-SVN: r15753
1997-09-28 01:52:39 -06:00
Jeffrey A Law
771c2d1bb7 Make-lang.in (G77_FLAGS_TO_PASS): Pass down RANLIB, RANLIB_TEST and AR instead of the _FOR_TARGET versions.
* Make-lang.in (G77_FLAGS_TO_PASS): Pass down RANLIB, RANLIB_TEST
        and AR instead of the _FOR_TARGET versions.

From-SVN: r15752
1997-09-28 01:44:42 -06:00
Jeffrey A Law
92cbe4d261 frame.c: Remove last change.
* frame.c: Remove last change.
        * dwarf2.h: Remove last change.
        * tree.h: Add declarations of DWARF2 unwind info support
        functions.
As requested by Jason.

From-SVN: r15751
1997-09-28 01:03:02 -06:00
Jason Merrill
2f3ca9e7f4 c-decl.c (init_decl_processing): Add __builtin_dwarf_reg_size.
* c-decl.c (init_decl_processing): Add __builtin_dwarf_reg_size.
	* tree.h (built_in_function): Likewise.
	* expr.c (expand_builtin): Likewise.
	* except.h: Likewise.
	* dwarf2out.c (expand_builtin_dwarf_reg_size): New fn.
	* libgcc2.c (copy_reg): New fn.
	(__throw): Use it.

From-SVN: r15750
1997-09-27 14:16:15 -04:00
Jason Merrill
faf199a621 regen
From-SVN: r15749
1997-09-27 14:15:16 -04:00
Jeff Law
dc09d4f07b New file from Ulrich.
From-SVN: r15742
1997-09-26 22:07:24 -06:00
Ulrich Drepper
d604f4c6a3 libio changes from Ulrich to help "old linux" systems.
libio changes from Ulrich to help "old linux" systems.  See ChangeLog
for details.

From-SVN: r15741
1997-09-26 22:07:00 -06:00
Andreas Schwab
a7cc7f29f4 frame.c: Include gansidecl.h for PROTO.
* frame.c: Include gansidecl.h for PROTO.
        * dwarf2out.c: Move inclusion of dwarf2.h down so that PROTO is
        defined.  Don't declare dwarf2out_cfi_label here.
        * dwarf2.h: Add declarations of DWARF2 unwind info support
        functions.
        * m68k.c: Include dwarf2.h.
        (output_function_prologue): Add dwarf2 support.
        * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM): New macros.
        (INCOMING_FRAME_SP_OFFSET): Likewise.
Update m68k patch from Andreas.

From-SVN: r15740
1997-09-26 21:58:57 -06:00
Paul Eggert
407cb092e3 c-typeck.c (build_binary_op): Warn about comparing signed vs unsigned if...
* c-typeck.c (build_binary_op): Warn about comparing signed vs
        unsigned if -W is specified and -Wno-sign-compare is not.
        * c-decl.c (warn_sign_compare): Initialize to -1.
        (c_decode_option): -Wall no longer implies -Wsign-compare.

From-SVN: r15739
1997-09-26 21:46:35 -06:00