Commit Graph

17616 Commits

Author SHA1 Message Date
Martin v. Löwis ea9635c739 decl.c (struct binding_level): New field using_directives.
* decl.c (struct binding_level): New field using_directives.
	(push_using_decl): Not sorry anymore.
	(push_using_directive): New function.
	(lookup_tag): Use CP_DECL_CONTEXT to iterate.
	(unqualified_namespace_lookup): New function, code from ...
	(lookup_name_real): ... here.
	* decl2.c (lookup_using_namespace): Pass using list instead of
	initial scope.
	(validate_nonmember_using_decl): New function.
	(do_nonmember_using_decl): New function.
	(do_toplevel_using_decl): Use them.
	(do_local_using_decl): New function.
	(do_using_directive): Support block-level directives.
	* parse.y (simple_stmt): Support using declarations and
	directives.
	(namespace_qualifier, namespace_using_decl): New non-terminals.

From-SVN: r21089
1998-07-12 11:41:22 -04:00
Martin v. Löwis 11b5139c46 xref.c (classname): New function.
* xref.c (classname): New function.
	(GNU_xref_hier): Change class and base parameters to tree.
	* decl.c (xref_baseypes): Change caller.
	* friend.c (make_friend_class): Likewise.

From-SVN: r21088
1998-07-12 11:20:42 -04:00
Jeffrey A Law cb689bb608 collect2.c (main): Use "-x c" instead of "-lang-c" for force the compiler into C mode.
* collect2.c (main): Use "-x c" instead of "-lang-c" for force the
        compiler into C mode.

From-SVN: r21087
1998-07-12 06:11:28 -06:00
Dave Love 90e5b31fb2 Fix bug address.
From-SVN: r21086
1998-07-12 09:02:56 +00:00
Dave Love 538ccf9a0b * g77.f-torture/noncompile/980616-0.f: New test.
From-SVN: r21085
1998-07-12 08:55:18 +00:00
Dave Love 3375639a48 New test.
From-SVN: r21084
1998-07-12 08:54:18 +00:00
Dave Love b1daa2150d Regenerate.
From-SVN: r21083
1998-07-12 05:15:00 +00:00
Dave Love b53c05f514 Makefile.in: Re-write build procedure mainly to honour dependencies correctly but also allow...
1998-07-10  Dave Love  <d.love@dl.ac.uk>
	* Makefile.in: Re-write build procedure mainly to honour
	dependencies correctly but also allow making in the build
	directory by configuring the relevant variables.  The lib[FIU]77
	subdirs do dependency checking of their objects.  Stamp files
	dictate when to run (new) archive targets in subdirs.  Some
	tidying of variables.  Supply full set of standard targets.
	* configure.in: Move much of testing to new configures in
	subdirs.  Tidy up handling of RANLIB etc.
	* stamp-h.in, libF77/configure.in, libI77/configure.in,
	libF77/configure, libI77/configure: New files.
	* libF77/Makefile.in, libI77/Makefile.in, libU77/Makefile.in:
	Change in step with libf2c/Makefile.in.

From-SVN: r21082
1998-07-12 05:02:03 +00:00
Dave Love e3fc7b684c version.c: Bump version.
1998-07-12  Dave Love  <d.love@dl.ac.uk>
	* version.c: Bump version.

From-SVN: r21081
1998-07-12 04:53:33 +00:00
Dave Love 684d50ab9d Bump version.
From-SVN: r21080
1998-07-12 04:52:27 +00:00
Craig Burley 4fe911f597 Fix 980616-0.f:
Sat Jul 11 19:24:32 1998  Craig Burley  <burley@gnu.org>
	Fix 980616-0.f:
	* equiv.c (ffeequiv_offset_): Don't crash on various
	possible ANY operands.

From-SVN: r21079
1998-07-12 04:47:46 +00:00
Craig Burley c264f1132e com.c (ffecom_expr_): Die if padding for constant is non-zero.
Sat Jul 11 18:24:37 1998  Craig Burley  <burley@gnu.org>
	* com.c (ffecom_expr_) [FFEBLD_opCONTER]: Die if padding
	for constant is non-zero.
	* com.c (__eprintf): Delete this function, it is obsolete.

From-SVN: r21078
1998-07-12 04:42:47 +00:00
Dave Love 3792922a1b 970816-3.f: New test from Craig.
1998-07-12  Dave Love  <d.love@dl.ac.uk>
	* g77.f-torture/execute/970816-3.f:  New test from Craig.

From-SVN: r21077
1998-07-12 04:36:38 +00:00
Dave Love 8ad1ecde35 New test from Craig.
From-SVN: r21076
1998-07-12 04:33:13 +00:00
Klaus-Georg Adams e6bc256177 stl_tempbuf.h (temporary_buffer): Add missing typename.
* stl_tempbuf.h (temporary_buffer): Add missing typename.
	* type_traits.h: update comments.

From-SVN: r21075
1998-07-11 23:18:39 -04:00
Jason Merrill 841f616caa new
From-SVN: r21074
1998-07-11 23:08:33 -04:00
Kriang Lerdsuwanakij 744fac594b typeck.c (comptypes, [...]): Add parameter comparison.
* typeck.c (comptypes, case TEMPLATE_TEMPLATE_PARM): Add parameter
	comparison.
	* pt.c (for_each_template_parm, case TEMPLATE_DECL): If it is a
	template template parameter, record its use.
	(for_each_template_parm, case TEMPLATE_TEMPLATE_PARM): Traverse
	its template arguments if exists.
	* pt.c (coerce_template_template_parms): New function equivalent
	to coerce_template_parms when IS_TMPL_PARM is true.
	(coerce_template_parms): Use it.  Remove the IS_TMPL_PARM parameter,
	all callers changed.
	(coerce_template_parms): Access ARGLIST properly when creating a
	new vector.  Only accept implicit TYPE_DECL as valid argument for
	a template template parameter when it is a base class of
	current_class_type.  Don't display error message when COMPLAIN is
	false.

From-SVN: r21073
1998-07-11 23:06:46 -04:00
Jason Merrill eda600e865 Makefile.in (VERSION): Bump to 2.9.0.
* Makefile.in (VERSION): Bump to 2.9.0.
	* std/bastring.cc (find_last_of): Fix.
	(find_last_not_of): Likewise.

From-SVN: r21072
1998-07-11 22:20:51 -04:00
Bob Sidebotham b0e7d996da * tstring.cc (findtest): New fn.
From-SVN: r21071
1998-07-11 22:20:22 -04:00
Jason Merrill e70b4d8f72 * cplus-dem.c (demangle_nested_args): Return a value.
From-SVN: r21070
1998-07-11 21:56:00 -04:00
Klaus Kaempf 46c0450177 repo.c (get_base_filename): Use file_name_nondirectory ().
* repo.c (get_base_filename): Use file_name_nondirectory ().
 	(open_repo_file): Ditto.
	* cp-tree.h (file_name_nondirectory): Add prototype.

From-SVN: r21069
1998-07-11 21:53:48 -04:00
Jason Merrill 2b9dc906d0 friend.c (do_friend): Pull the identifier out of declarator.
* friend.c (do_friend): Pull the identifier out of declarator.
	Use cp_error and friends.
	* decl2.c (qualified_lookup_using_namespace): Fix call to
	purpose_member.
	* decl.c (lookup_name_real): Don't call complete_type on a namespace.
	(grokvardecl): Use DECL_CLASS_SCOPE_P.
	(xref_basetypes): Fix call to GNU_xref_hier.
	* cvt.c (convert_pointer_to_real): Check for error_mark_node sooner.
	* class.c (warn_hidden): Fix for OVERLOAD.
	From grahams@rcp.co.uk:
	* cp-tree.h (DEFARG_NODE_CHECK): New macro.
 	(DEFARG_LENGTH, DEFARG_POINTER): Use it.

From-SVN: r21068
1998-07-11 21:30:11 -04:00
Jason Merrill 555f90c5ef * tree.h (TYPE_P): New macro.
From-SVN: r21067
1998-07-11 21:29:26 -04:00
Jason Merrill 4f8b4fd92c document -fno-optional-diags
From-SVN: r21066
1998-07-11 21:25:52 -04:00
Jeff Law 3f7b38e5ec Daily bump.
From-SVN: r21065
1998-07-11 18:45:02 -06:00
Jeffrey A Law 011ce2a134 * g++.1 (-traditional): Remove duplicated documentation.
From-SVN: r21064
1998-07-11 18:25:49 -06:00
David S. Miller 3ecb16a2d7 Please try to remember to regenerate this when
you commit changes to configure.in

From-SVN: r21063
1998-07-11 14:38:27 -07:00
Mark Mitchell 59e621fcdd cplus-dem.c (string): Move definition before work_stuff.
* cplus-dem.c (string): Move definition before work_stuff.
	(work_stuff): Add volatile_type, forgetting_types,
	previous_argument, and nrepeats fields.
	(SCOPE_STRING): New macro.
	(demangle_template): Add `remember' parameter.  Add comment.
	Register the `B' code type here, if remembering.  Tidy.  Fix crash
	on NULL tmpl_argvec.  Be consistent with use of tname/trawname.
	(demangle_nested_args): New function.
	(internal_cplus_demangle): Handle volatile-qualified member
	functions.
	(mop_up): Delete the previous_argument string if present.
	(demangle_signature): Tidy.  Handle volatile-qualified member
	functions.  Handle back-references using the `B' code.  Use extra
	parameter to demangle_template and SCOPE_STRING where appropriate.
	(demangle_template_value_parm): Fix thinko; 'B' is not an integral
	code.
	(demangle_class): Use SCOPE_STRING.
	(gnu_special): Pass additional argument to demangle_template.
	Use SCOPE_STRING.
	(demangle_qualified): Save qualified types for later
	back-references.  Handle constructors and destructors for template
	types correctly.
	(do_type): Tidy.  Use SCOPE_STRING.  Pass extra argument to
	demangle_template.  Use demangled_nested_args.  Don't remember
	qualified types here; that's now done in demangle_qualified.
	Similarly for templates.
	(do_arg): Improve commment.  Handle 'n' repeat code.
	(remember_type): Check forgetting_types.
	(demangle_args): Deal with 'n' repeat codes.  Tidy.
	* method.c (flush_repeats): Add nrepeats parameter.
	(issue_nrepeats): Likewise.
	(is_back_referenceable_type): New function.  Don't back-reference
	TEMPLATE_TYPE_PARMs as well as simple types like integers.
	(build_mangled_name_for_type): Likewise.
	(build_mangled_name_for_type_with_Gcode): Likewise.
	(lasttype): Remove.
	(nrepeats): Likewise.
	(Nrepeats): Likewise.
	(start_squangling): Don't clear the variables removed above.
	(end_squangling): Likewise.
	(flush_repeats): Tidy.  Use nrepeats parameter rather than
	Nrepeats global.
	(issue_nrepeats): Likewise, but with nrepeats global.  Use
	is_backreferenceable_type.
	(build_overload_nested_name): Tidy.  Add comment.  Use
	build_mangled_name_for_type.
	(build_underscore_int): Comment.
	(build_overload_scope_ref): Use build_mangled_name_for_type.
	(build_overload_int): Likewise.
	(build_template_template_parm_names): Tidy.
	(build_template_parm_names): Use build_mangled_name_for_type.
	(build_overload_identifier): Add comments.
	(build_mangled_name_for_type_with_Gcode): Split out from
	build_mangled_name.
	(build_mangled_name_for_type): Use it.
	(build_mangled_name): Rework to use build_mangled_name_for_type
	and to not use global nrepeats/Nrepeats.  Tidy.
	(process_modifiers): Tidy.
	(check_btype): Use is_backreferenceable_type.  Add comment.
	Rename `node' to `type'.
	(process_overload_item): Set numeric_output_need_bar here.
	Use build_mangled_name_for_type.  Tidy.
	(build_decl_overload_real): Tidy.  Don't use Nrepeats.  Use
	build_mangled_name_for_type.

From-SVN: r21062
1998-07-11 16:20:54 +00:00
Mark Mitchell 6b9ab5cc45 pt.c (push_template_decl_real): Don't look at DECL_TEMPLATE_INFO for TYPE_DECLs.
* pt.c (push_template_decl_real): Don't look at DECL_TEMPLATE_INFO
	for TYPE_DECLs.

From-SVN: r21061
1998-07-11 15:42:37 +00:00
Martin v. Löwis 7152373700 New test case.
From-SVN: r21060
1998-07-11 10:36:18 +00:00
Martin v. Löwis bfebe8501d New testcase.
From-SVN: r21059
1998-07-11 10:35:24 +00:00
Richard Earnshaw a717c1f94d * configure.in (thumb-*-coff*): Don't cause fixincludes to be run.
From-SVN: r21058
1998-07-11 03:09:16 +00:00
Richard Earnshaw 34757369d0 arm.md (extendhisi2_mem, [...]): Propagate the volatile and structure attribute flags to MEMs generated.
* arm.md (extendhisi2_mem, movhi, movhi_bytes): Propagate the volatile
and structure attribute flags to MEMs generated.
(splits for sign-extended HI & QI mode from memory):  Also propagate
the volatile flag.

From-SVN: r21057
1998-07-11 03:04:39 +00:00
Martin v. Löwis 420d3897e2 Add myself, as per Jeff Law's request.
From-SVN: r21056
1998-07-11 02:20:40 +00:00
Jeff Law 89ee851ab7 Daily bump.
From-SVN: r21055
1998-07-10 18:45:02 -06:00
Martin v. Loewis a1ee890de5 singleton.C: Return error value instead of taking SIGSEGV.
*  g++.other/singleton.C: Return error value instead of taking
	SIGSEGV.

From-SVN: r21054
1998-07-10 21:45:18 +00:00
Michael Meissner 4dfb04c6f4 Include system.h if it was not already included
From-SVN: r21053
1998-07-10 16:12:26 +00:00
David S. Miller a87ef32399 jump.c (jump_optimize): If after_regscan and our transformations generate new REGs, rerun reg_scan.
* jump.c (jump_optimize): If after_regscan and our transformations
	generate new REGs, rerun reg_scan.

From-SVN: r21052
1998-07-10 07:00:58 -07:00
Andrew MacLeod 3410b2f389 i960.c (i960_address_cost): MEMA operands with positive offsets < 4096 are free.
Fri Jul 10 11:50:43 EDT 1998  Andrew MacLeod  <amacleod@cygnus.com>
	* config/i960/i960.c (i960_address_cost): MEMA operands with
	positive offsets < 4096 are free.

From-SVN: r21051
1998-07-10 08:55:34 +00:00
Klaus-Georg Adams 1d8cc6e9f4 singleton.C: New test.
*  g++.other/singleton.C: New test.   Warning is under dispute.
	Runtime crash is not.

From-SVN: r21050
1998-07-10 08:03:35 +00:00
Andreas Schwab 03c5634a9d m68k.c (const_uint32_operand): Recognize CONSTANT_P_RTX.
* config/m68k/m68k.c (const_uint32_operand): Recognize
	CONSTANT_P_RTX.
	(const_sint32_operand): Likewise.

From-SVN: r21049
1998-07-10 03:36:24 +00:00
Jeff Law 57618cf478 Daily bump.
From-SVN: r21047
1998-07-09 18:45:03 -06:00
Jeffrey A Law 57c578cfad * gcc.c-torture/execute/980709-1.c: New test.
From-SVN: r21046
1998-07-09 17:19:19 -06:00
Jeff Law 52fe52e20e Remove trailing whitespace after a backslash.
From-SVN: r21045
1998-07-09 16:55:40 -06:00
Jeffrey A Law df22a2d662 * Makefile.in (alias.o): Depend on $(EXPR_H).
From-SVN: r21044
1998-07-09 16:04:00 -06:00
Martin v. Loewis a0f95f3f49
From Martin Von Loewis.
       * g++.ns/{alias2.C, alias5.C, koenig4.C, lookup3.C ns13.C,
       ns14.C, ns15.C, template3.C, undef1.C, using4.C, using5.C,
       using6.C, using7.C}:  New namespace tests.

From-SVN: r21043
1998-07-09 21:10:51 +00:00
Martin v. Loewis b458ba78ae
From Martin Von Loewis.
       * g++.ns/{alias2.C, alias5.C, koenig4.C, lookup3.C ns13.C,
       ns14.C, ns15.C, template3.C, undef1.C, using4.C, using5.C,
       using6.C, using7.C}:  New namespace tests.

From-SVN: r21042
1998-07-09 21:10:50 +00:00
Martin v. Loewis 80dba97863
From Martin Von Loewis.
       * g++.ns/{alias2.C, alias5.C, koenig4.C, lookup3.C ns13.C,
       ns14.C, ns15.C, template3.C, undef1.C, using4.C, using5.C,
       using6.C, using7.C}:  New namespace tests.

From-SVN: r21041
1998-07-09 21:10:49 +00:00
Alexandre Oliva 2538118776 From Alexandre Oliva
* g++.old-deja/g++.other/partspec1.C: test matching of partial
        specialization with typedef'ed names used as array indexes.

From-SVN: r21040
1998-07-09 20:56:44 +00:00
Dave Love 1cd97bb328 intdoc.in (HOSTNM_func, [...]): Update last change.
1998-07-09  Dave Love  <d.love@dl.ac.uk>
	* intdoc.in (HOSTNM_func, HOSTNM_subr): Update last change.

From-SVN: r21039
1998-07-09 14:17:18 +00:00