Commit Graph

17797 Commits

Author SHA1 Message Date
Jason Merrill ac478ac0fd cygwin32.h (VALID_MACHINE_TYPE_ATTRIBUTE): New macro.
Tue Jul 28 23:29:04 1998  Jason Merrill  <jason@yorick.cygnus.com>
        * i386/cygwin32.h (VALID_MACHINE_TYPE_ATTRIBUTE): New macro.
        * i386/winnt.c (associated_type): New fn.
        (i386_pe_valid_type_attribute_p): New fn.
        (i386_pe_check_vtable_importexport): Remove.
        (i386_pe_dllexport_p): Use associated_type.
        (i386_pe_dllimport_p): Likewise.
        From Antonio M. O. Neto <anmendes@cruzeironet.com.br>:
        * i386.c (i386_valid_type_attribute_p): Also accept
        attributes for METHOD_TYPEs.

From-SVN: r21456
1998-07-28 16:30:29 -06:00
Peter Gerwinski 28372f4188 tree.c (build_range_type): Copy TYPE_SIZE_UNIT.
�
        * tree.c (build_range_type): Copy TYPE_SIZE_UNIT.

From-SVN: r21455
1998-07-28 16:19:53 -06:00
Jeff Law f4494d3838 Tweak last entry
From-SVN: r21451
1998-07-28 16:06:42 -06: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
Craig Burley e67ac8e6ee gcc.c: Fix commentary describing %g, %u, %U, and %O.
* 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: r21449
1998-07-28 15:33:41 -06:00
Mark Mitchell 8fb08bdddf friend.c (is_friend): Be lenient with member functions to deal with nested friends.
* friend.c (is_friend): Be lenient with member functions to deal
	with nested friends.

From-SVN: r21444
1998-07-28 16:50:16 +00:00
Benjamin Kosnik 9b126a1025
try 2

From-SVN: r21443
1998-07-28 14:07:12 +00:00
Benjamin Kosnik fb3ad9b3d3
friend test

From-SVN: r21442
1998-07-28 14:06:48 +00:00
Benjamin Kosnik e674dda9ac *** empty log message ***
From-SVN: r21441
1998-07-28 14:06:12 +00:00
Benjamin Kosnik 49e4181d22
try 1

From-SVN: r21440
1998-07-28 14:05:55 +00:00
Benjamin Kosnik 32fcacb013
try 3

From-SVN: r21439
1998-07-28 14:01:25 +00:00
Jason Merrill 282a221c4e class.c (finish_struct_1): Convert integer_zero_node to ssizetype before passing it to set_rtti_entry.
* class.c (finish_struct_1): Convert integer_zero_node to
 	ssizetype before passing it to set_rtti_entry.
	* typeck2.c (initializer_constant_valid_p): Allow conversion of 0
	of any size to a pointer.

From-SVN: r21438
1998-07-28 10:00:46 -04:00
Benjamin Kosnik 9e393e151a *** empty log message ***
From-SVN: r21436
1998-07-28 13:38:38 +00:00
Vladimir N. Makarov 1ed0205e35 cse.c (cse_insn): Enable subsitution inside libcall only for REG, SUBREG, MEM.
�
	* cse.c (cse_insn): Enable subsitution inside libcall only for REG,
	SUBREG, MEM.
	* rtlanal.c (replace_rtx): Prohibit replaces in	CONST_DOUBLE.

From-SVN: r21435
1998-07-28 12:54:04 +00:00
Mark Mitchell 4d17a06f32 cplus-dem.c (type_kind_t): New type.
* cplus-dem.c (type_kind_t): New type.
	(demangle_template_value_parm): Add type_kind_t parameter.  Rely
	on this paramter, rather than demangling the type again.
	(demangle_integral_value): Pass tk_integral.
	(demangle_template_: Pass the value returned from do_type.
	(do_type): Return a type_kind_t.  Pass tk_integral to
	demangle_template_value_parm for array bounds.
	(demangle_fund_type): Likewise.

From-SVN: r21434
1998-07-28 11:45:32 +00:00
Mark Mitchell 36a117a5b3 cp-tree.h (TI_USES_TEMPLATE_PARMS): Remove.
* cp-tree.h (TI_USES_TEMPLATE_PARMS): Remove.
	(build_template_decl_overload): Remove.
	(set_mangled_name_for_decl): New function.
	(innermost_args): Remove is_spec parameter.
	(most_specialized, most_specialized_class): Remove declarations.
	(lookup_template_class): Add entering_scope parameter.
	(maybe_process_partial_specialization): New function.
	(finish_template_decl): Likewise.
	(finish_template_type): Likewise.
	* class.c (finish_struct): Clean up processing of member template
	specializations.
	* decl.c (pushtag): Fix	formatting.
	(lookup_tag): Improve handling of pseudo-global levels.
	(make_typename_type): Adjust call to lookup_template_class.
	(shadow_tag): Use maybe_process_partial_specialization.
	(xref_tag): Improve handling of member friends.
	(start_function): Call push_nested_class before
	push_template_decl.  Don't call push_template_decl for
	specializations.
	* decl2.c (grok_x_components): Don't call xref_tag for
	template instantiations.  Handle UNION_TYPEs like RECORD_TYPEs.
	(grokclassfn): Use set_mangled_name_for_decl.
	(arg_assoc_class): Adjust call to innermost_args.
	(mark_used): Don't call instantiate_decl for a TEMPLATE_DECL.
	* error.c (dump_function_name): Improve printing of template
	function names.
	* friend.c (is_friend): Don't compare types of decls to determine
	friendship, unless flag_guiding_decls.
	(make_friend_class): Partial specializations cannot be friends.
	(do_friend): Use set_mangled_name_for_decl.  Call
	push_template_decl_real instead of push_template_decl.
	* method.c (build_decl_overload_real): Remove prototype.  Give it
	external linkage.
	(build_overload_identififer): Adjust call to innermost_args.
	(build_template_decl_overload): Remove.
	(set_mangled_name_for_decl): New function.
	* parse.y (.finish_template_type): New non-terminal.
	(template_def): Use finish_template_decl.  Use template_extdef
	instead of extdef.
	(template_extdef, template_datadef): New non-terminals, containing
	only those rules for things which can be templates.
	(datadef): Tidy.
	(template_type, self_template_type): Use .finish_template_type.
	(named_class_head): Use maybe_process_partial_specialization.
	* pt.c (mangle_class_name_for_template): Remove context parameter.
	(get_class_bindings): Remove outer_args parameter.
	(complete_template_args): Remove.
	(add_outermost_template_args): New function.
	(register_specialization): Return the specialization.
	(unregister_specialization): New function.
	(tsubst_template_parms): Likewise.
	(most_specialized, most_specialized_class): Prototype here as
	static.
	(original_template): Rename to most_general_template.
	(tsubst_template_parms): New function.
	(set_mangled_name_for_template_decl): Likewise.
	(TMPL_ARGS_DEPTH): New macro.
	(TMPL_ARGS_HAVE_MULTIPLE_LEVELS): Adjust.
	(TMPL_ARGS_LEVEL): New macro.
	(SET_TMPL_ARGS_LEVEL): Likewise.
	(TMPL_ARG): Likewise.
	(SET_TMPL_ARG): Likewise.
	(TMPL_ARGS_DEPTH): Likewise.
	(finish_member_template_decl): Use finish_template_decl.
	(maybe_process_partial_specialization): New function, split out
	from tsubst.
	(inline_needs_template_parms): Use TMPL_PARMS_DEPTH.
	(maybe_begin_member_template_processing): Use new macros.
	(is_member_template): Likewise.
	(is_member_template_class): Likewise.
	(add_to_template_args): Likewise.  Deal with multiple levels of
	args.
	(maybe_process_partial_specialization): New function.
	(retrieve_specialization): Add consistency check.
	(determine_specialization): Return full argument list.
	(check_explicit_specialization): Tweak friend handling.  Use full
	argument lists.  Simplify.
	(current_template_args): Use new macros.
	(push_template_decl_real): Change ill-named mainargs to specargs.
	Check that a partial specialization actually specializes at least
	one parameter.   Improve friend handling.  Modify for full
	template arguments.
	(classtype_mangled_name): Don't mangle the names of
	specializations.
	(lookup_template_class): Add entering_scope parameter.  Use it to
	avoid finding a template type when an instantiation is required.
	Simplify.  Use full template arguments.
	(tsubst_friend_function): Use unregister_specialization.  Use new
	macros.  Use full template arguments.
	(tsubst_friend_class): Substitute, using tsubst_template_parms,
	into the template parameters before passing them to
	redeclare_class_template.
	(instantiate_class_template): Simplify.  Use full template
	arguments.  Adjust calls to get_class_bindings.  Use
	SET_IDENTIFIER_TYPE_VALUE where needed.  Improve friend handling.
	(innermost_args): Use new macros.
	(tsubst_aggr_type): New function, split out from tsubst.
	(tsubst): Use tsubst_aggr_type, tsubst_template_parms, new calling
	conventions for lookup_tmeplate_class.  Refine handling of partial
	instantiations.   Remove calls to complete_template_args.
	Simplify.  Add consistency checks.  Use set_mangled_name_for_decl
	and set_mangled_name_for_template_decl.
	(tsubst_copy): Use tsubst_aggr_type.
	(instantiate_template): Use full template arguments.
	(more_specialized): Improve formatting.
	(more_specialized_class): Adjust calls to get_class_bindings.
	(get_bindings_real): Don't call complete_template_args.
	(most_specialized): Don't overwrite input; create a new list.
	(most_specialized_class): Use most_general_template.
	(regenerate_decl_from_template): Use unregister_specialization.
	Use full template arguments.
	(instantiate_decl): Use full template arguments.
	(set_mangled_name_for_template_decl): New function.
	* semantics.c (begin_class_definition): Use
	maybe_process_partial_specialization.
	(finish_member_class_template): New function.
	(finish_template_decl): Likewise.
	(finish_template_type): Likewise.
	(typeck.c): Don't crash after issuing a compiler_error.
	* Makefile.in (CONFLICTS): Adjust; we removed a s/r conflict.

From-SVN: r21433
1998-07-28 01:03:16 +00:00
Jeff Law 0167ae91ff Daily bump.
From-SVN: r21431
1998-07-27 18:45:03 -06:00
Jason Merrill 3551c17764 * typeck2.c (build_functional_cast): Handle default-initialization.
From-SVN: r21427
1998-07-27 17:47:41 -04:00
Jason Merrill b3abfd6fc1 tree.c (simple_cst_equal, [...]): OK if the elts are identical.
* tree.c (simple_cst_equal, case CONSTRUCTOR): OK if the elts are
	identical.

From-SVN: r21425
1998-07-27 17:42:35 -04:00
Jeffrey A Law 198f32a6e4 * pa.c (move_operand): Accept CONSTANT_P_RTX.
From-SVN: r21423
1998-07-27 15:20:00 -06:00
Mike Stump 31e9c6ed12 * compare_tests: New script.
From-SVN: r21422
1998-07-27 15:12:03 -06:00
Alexandre Oliva 91fa313b84 * test_summary: assigned copyright to FSF
From-SVN: r21421
1998-07-27 21:01:54 +00:00
Gerald Pfeifer 59d3b2e4f1 test_summary: Corrected script name in comments providing documentation.
P
	* test_summary: Corrected script name in comments providing
	documentation.  Added linebreaks for lines with > 80 characters.

From-SVN: r21420
1998-07-27 14:37:47 -06:00
Gerald Pfeifer 18aca90238 test_summary: Corrected script name in comments providing documentation.
F
	* test_summary: Corrected script name in comments providing
	documentation.  Added linebreaks for lines with > 80 characters.

From-SVN: r21419
1998-07-27 14:37:46 -06:00
Jason Merrill 66c2127e18 * call.c (build_over_call): Pass 1 to popclass.
From-SVN: r21418
1998-07-27 13:03:39 -04:00
Jason Merrill 92ac31f12b parse.y (direct_notype_declarator): Add precedence declaration to notype_unqualified_id case.
* parse.y (direct_notype_declarator): Add precedence declaration
	to notype_unqualified_id case.
	* tree.c (ovl_member): Fix for single function in OVL.

From-SVN: r21417
1998-07-27 10:38:11 -04:00
Dave Brolley 74a4fbfcc8 stor-layout.c (layout_type): Handle arrays of bits, for Chill.
Mon Jul 27 17:18:52 1998  Dave Brolley  <brolley@cygnus.com>
	* stor-layout.c (layout_type): Handle arrays of bits, for Chill.
	* expr.c (get_inner_reference): Handle zero-based, unsigned, array
	index conversion.

From-SVN: r21416
1998-07-27 10:37:00 -04:00
Jeff Law 4944f54f41 mn10300.h (DEBUGGER_AUTO_OFFSET): Define.
`
        * mn10300.h (DEBUGGER_AUTO_OFFSET): Define.
        (DEBUGGER_ARG_OFFSET): Likewise.
        * mn10300.md (movsf): Remove last change.  Not needed.

From-SVN: r21415
1998-07-27 07:53:27 -06:00
Jeff Law 217b83c96a mn10300.h (DEBUGGER_AUTO_OFFSET): Define.
* mn10300.h (DEBUGGER_AUTO_OFFSET): Define.
        (DEBUGGER_ARG_OFFSET): Likewise.
        * mn10300.md (movsf): Remove last change.  Not needed.

From-SVN: r21414
1998-07-27 07:53:24 -06:00
Dave Brolley 45e0984cdb c-lex.c (yylex): Fix boundary conditions in character literal and string literal loops.
Mon Jul 27 14:22:36 1998  Dave Brolley  <brolley@cygnus.com>
	* c-lex.c (yylex): Fix boundary conditions in character literal and
	string literal loops.

From-SVN: r21413
1998-07-27 08:51:56 -04:00
Dave Brolley ea6c114284 c-lex.c (yylex): Fix boundary conditions in character literal and string literal loops.
1998-07-27  Dave Brolley  <brolley@cygnus.com>
	* c-lex.c (yylex): Fix boundary conditions in character literal and
	string literal loops.

From-SVN: r21412
1998-07-27 08:37:16 -04:00
Stan Cox 84530511d2 configure.in: Added i[34567]86-*-win32.
config.sub: Ditto.
configure: Rebuilt.
longlong.h (count_leading_zeros): Sparclite scan instruction
i386.c (ix86_prologue): Added SUBTARGET_PROLOGUE invocation.
i386/cygwin32.h (STARTFILE_SPEC, LIB_SPEC, SUBTARGET_PROLOGUE): Add -pg support.
i386/win.h: New file.  Hybrid mingw32.h/cygwin32.h configuration.

From-SVN: r21411
1998-07-27 11:56:18 +00:00
Jason Merrill cb99b4a0ce x
From-SVN: r21409
1998-07-27 07:09:14 -04:00
Jeff Law 51d68ee878 Daily bump.
From-SVN: r21404
1998-07-26 18:45:02 -06:00
Dave Love a64d77963e 980615-0.f: New test.
1998-07-26  Dave Love  <d.love@dl.ac.uk>
	* g77.f-torture/noncompile/980615-0.f: New test.

From-SVN: r21403
1998-07-26 14:57:37 +00:00
Dave Love 19ede93469 New test.
From-SVN: r21402
1998-07-26 14:55:48 +00:00
Craig Burley 99b712ffc9 Fix 980615-0.f:
Sat Jul 25 17:23:55 1998  Craig Burley  <burley@gnu.org>
	Fix 980615-0.f:
	* stc.c (ffestc_R1229_start): Set info to ANY as well.

From-SVN: r21401
1998-07-26 14:49:27 +00:00
Dave Love a30ab391c3 BUGS, [...]: Rebuilt.
1998-07-26  Dave Love  <d.love@dl.ac.uk>
	* BUGS, INSTALL, NEWS: Rebuilt.

From-SVN: r21399
1998-07-26 14:36:13 +00:00
Dave Love d9b9ee6406 Rebuilt.
From-SVN: r21398
1998-07-26 14:35:03 +00:00
Jeff Law 7935f0d59f Daily bump.
From-SVN: r21394
1998-07-25 18:45:01 -06:00
H.J. Lu 61dd26e6ba i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Return 0 when eliminating the frame pointer and compiling PIC code and reload...
* i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Return 0 when eliminating
        the frame pointer and compiling PIC code and reload has not completed.

From-SVN: r21392
1998-07-25 18:34:10 -06:00
H.J. Lu 3abe23a0eb 980312-1.c: Do link instead of compile.
* gcc.dg/980312-1.c: Do link instead of compile.
        * gcc.dg/980313-1.c: Likewise.

From-SVN: r21391
1998-07-25 18:16:26 -06:00
H.J. Lu 60aeab7f32 i386.c (output_to_reg): Add code to emulate non-popping DImode case.
�
        * i386.c (output_to_reg): Add code to emulate non-popping DImode
        case.

From-SVN: r21389
1998-07-25 18:12:12 -06:00
Jeffrey A Law bc6bd744c5 * gcc.c-torture/compile/980726-1.c: New test.
From-SVN: r21388
1998-07-25 18:05:36 -06:00
Jeffrey A Law 9616dd8d5f * regmove.c (regmove_optimize): Fix typo initializing regmove_bb_head.
From-SVN: r21386
1998-07-25 18:03:18 -06:00
Gerald Pfeifer f8c86b58a2 Makefile.in (install-info): Only try to update the info directory file if it exists in the first place.
8
        * Makefile.in (install-info): Only try to update the info
        directory file if it exists in the first place.

From-SVN: r21383
1998-07-25 16:30:26 -06:00
Gerald Pfeifer b0a766e89d Makefile.in (install-info): Only try to update the info directory file if it exists in the first place.
�
        * Makefile.in (install-info): Only try to update the info
        directory file if it exists in the first place.

From-SVN: r21382
1998-07-25 16:30:24 -06:00
Dave Love e5d82dcf39 Makefile.in (s-libe77, [...]): Rely on VPATH, dropping explicit use of $(srcdir) in various places.
1998-07-24  Dave Love  <d.love@dl.ac.uk>
	* Makefile.in (s-libe77, ${srcdir}/configure, g2c.h, Makefile,
	config.status, rebuilt): Rely on VPATH, dropping explicit use of
	$(srcdir) in various places.

From-SVN: r21379
1998-07-25 05:38:51 +00:00
Dave Love b07d089197 (s-libe77, ${srcdir}/configure, g2c.h, Makefile,
config.status, rebuilt): Rely on VPATH, dropping explicit use of
$(srcdir) in various places.

From-SVN: r21378
1998-07-25 05:37:48 +00:00
Dave Love 8b62e122ec io0.f: New test.
1998-07-25  Dave Love  <d.love@dl.ac.uk>
	* g77.f-torture/execute/io0.f: New test.

From-SVN: r21372
1998-07-25 04:36:27 +00:00