Commit Graph

17575 Commits

Author SHA1 Message Date
Mark Mitchell
9923cc566f cplus-dem.c: Incorporate changes from GCC version not present in the libiberty version.
* cplus-dem.c: Incorporate changes from GCC version not present in
	the libiberty version.

From-SVN: r21101
1998-07-13 10:54:01 +00:00
Mark Mitchell
c78ea26788 cplus-dem.c (SCOPE_STRING): Remove DMGL_JAVA stuff.
* cplus-dem.c (SCOPE_STRING): Remove DMGL_JAVA stuff.
	(cplus_demangle_opname):  Initialize work.
	(demangle_template): Remove is_java_array.
	(do_type): Remove DMGL_JAVA stuff.
	(long_options): Remove "java".
	(main): Remove 'j' option.

From-SVN: r21100
1998-07-13 10:50:32 +00:00
Jeffrey A Law
b5f881570b expr.c (expand_expr): Only set MEM_IN_STRUCT_P if the memory address is not varying for...
* expr.c (expand_expr): Only set MEM_IN_STRUCT_P if the memory address
        is not varying for REFERENCE_TYPE or when we think we might have found
        an optimized access to the first element in an array.

From-SVN: r21099
1998-07-13 03:26:59 -06:00
Dave Love
bda991ee5e auto0.f, auto1.f: New test from Craig.
1998-07-13  Dave Love  <d.love@dl.ac.uk>
	* g77.f-torture/execute/auto0.f, g77.f-torture/execute/auto1.f:
	New test from Craig.

From-SVN: r21098
1998-07-13 03:53:27 +00:00
Dave Love
0b9c791483 New test from Craig.
From-SVN: r21097
1998-07-13 03:51:25 +00:00
David S. Miller
f903b91f37 More efficient version of Jul 10 bugfix of mine, as discussed on egcs-patches.
More efficient version of Jul 10 bugfix of mine, as
discussed on egcs-patches.
	* regclass.c (reg_scan_mark_refs): New arg min_regno.  Only update
	regscan information for REGs with numbers greater than or equal to
	this.  All callers changed.
	(reg_scan_update): New function to efficiently update regscan
	information on the fly.
	* rtl.h: Add prototype.
	* jump.c (jump_optimize): Call it when we make a transformation
	which generates new pseudo-REGs.

From-SVN: r21096
1998-07-12 20:34:12 -07:00
Jeff Law
1b07eafaae Daily bump.
From-SVN: r21095
1998-07-12 18:45:02 -06:00
Martin v. Löwis
a759e627d7 decl2.c (build_expr_from_tree): Change calls of do_identifier.
* decl2.c (build_expr_from_tree): Change calls of do_identifier.
	Do Koenig lookup in CALL_EXPR.
	(arg_assoc): Handle error_mark.
	* lex.c (is_global): New function.
	(do_identifier): Expect arguments for Koenig lookup.
	* parse.y (primary): Add rules for calls of unqualified function calls.
	(do_id): Change call of do_identifier.
	* pt.c (finish_stmt_expr): Likewise.
	* semantics.c (finish_id_expr): Likewise.
	(finish_call_expr): Add integer parameter to indicate
	argument-dependent lookup.

From-SVN: r21091
1998-07-12 12:55:29 -04:00
Jason Merrill
894ded60fa fix
From-SVN: r21090
1998-07-12 12:39:31 -04:00
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