Go to file
Alex Samuel 596ea4e574 cp-tree.h (ansi_opname): Make it a macro.
2000-05-27  Alex Samuel    <samuel@codesourcery.com>
	    Mark Mitchell  <mark@codesourcery.com>

	* cp-tree.h (ansi_opname): Make it a macro.
	(ansi_assopname): Likewise.
	(struct lang_decl_flags): Add assignment_operator_p.
	(struct lang_decl): Add operator_code.
	(DECL_VTT_PARM): Adjust.
	(DECL_OVERLOADED_OPERATOR_P): Return the operator_code for an
	overloaded operator.
	(SET_OVERLOADED_OPERATOR_CODE): New macro.
	(DECL_ASSIGNMENT_OPERATOR_P): New macro.
	(DECL_ARRAY_DELETE_OPERATOR_P): Adjust.
	(opname_tab): Remove.
	(assignop_tab): Likewise.
	(operator_name_info_t): New type.
	(operator_name_info): New variable.
	(assignment_operator_name_info): Likewise.
	(build_cp_library_fn): Remove declaration.
	(push_cp_library_fn): Likewise.
	(operator_name_string): Likewise.
	(build_decl_overload): Likewise.
	* call.c (print_z_candidates): Simplify.
	(build_object_call): Adjust usage of ansi_opname.  Use
	DECL_OVERLOADED_OPERATOR_P.
	(op_error): Adjust operator name lookup.
	(build_conditional_expr): Adjust usage of ansi_opname.
	(build_new_op): Likewise.
	(build_op_delete_call): Likewise.
	(build_over_call): Likewise.
	(joust): Use DECL_OVERLOADED_OPERATOR_P.
	* decl.c (duplicate_decls): Copy operator_code.
	(init_decl_processing): Adjust parameters to push_cp_library_fn.
	(builtin_function): Adjust parameters to build_library_fn_1.
	(build_library_fn_1): Accept an overloaded operator code.
	(build_library_fn): Pass ERROR_MARK.
	(build_cp_library_fn): Accept an overloaded operator code.
	(push_cp_library_fn): Likewise.
	(grokfndecl): Tweak.
	(grokdeclarator): Simplify code to compute names of overloaded
	operators.  Adjust use of ansi_opname.
	(ambi_op_p): Work on tree_codes, not identifiers.
	(unary_op_p): Likewise.
	(grok_op_properties): Likewise.
	(start_function): Use DECL_OVERLOADED_OPERATOR_P.
	(lang_mark_tree): Don't try to mark the operator_code.
	* decl2.c (grok_function_init): Use DECL_OVERLOADED_OPERATOR_P.
	* error.c (dump_decl): Remove special handling for operator
	names.
	(dump_function_name): Likewise.
	(dump_expr): Adjust name lookup of operators.
	(op_to_string): Simplify.
	(assop_to_string): Likewise.
	* init.c (build_new_1): Adjust use of ansi_opname.
	* lex.c (opname_tab): Remove.
	(assignop_tab): Likewise.
	(ansi_opname): Likewise.
	(ansi_assopname): Likewise.
	(operator_name_string): Likewise.
	(reinit_lang_specific): Likewise.
	(operator_name_info): New variable.
	(assignment_operator_name_info): Likewise.
	(init_operators): New function.
	(init_parse): Use it.
	(do_identifier): Adjust use of ansi_opname.
	* method.c (mangle_expression): Don't use ansi_opname for
	mangling.
	(build_decl_overload_real): Use DECL_OVERLOADED_OPERATOR_P.
	(build_decl_overload): Remove.
	(build_typename_overload): Use OPERATOR_TYPENAME_FORMAT directly.
	(do_build_assign_ref): Adjust use of ansi_opname.
	(synthesize_method): Likewise.
	(implicitly_declare_fn): Likewise.
	* operators.def: New file.
	* parse.y (operator): Adjust use of ansi_opname.
	* pt.c (tsubst_decl): Use IDENTIFIER_OPNAME_P.
	(set_mangled_name_for_template_decl): Don't play games with
	current_namespace.
	(special_function_p): Adjust use of ansi_opname.
	* typeck.c (check_return_expr): Likewise.
	* Make-lang.in (cc1plus): Depend on operators.def.
	* Makefile.in (lex.o): Likewise.
	(decl.o): Likewise.

Co-Authored-By: Mark Mitchell <mark@codesourcery.com>

From-SVN: r34223
2000-05-28 02:58:19 +00:00
boehm-gc Imported 5.0 release version. 2000-05-10 22:59:16 +01:00
config
contrib Oops, removed `Reported by' comment 2000-05-18 05:32:06 +00:00
etc * standards.texi, make-stds.texi: Update to FSF version of May 13. 2000-05-18 07:17:15 +00:00
gcc cp-tree.h (ansi_opname): Make it a macro. 2000-05-28 02:58:19 +00:00
include getopt.h (getopt): Also check HAVE_DECL_* when prototyping. 2000-05-23 17:42:19 +00:00
INSTALL
libchill
libf2c Daily bump. 2000-05-27 01:45:07 -06:00
libffi README updated for ARM 2000-05-11 18:20:33 +00:00
libiberty Makefile.in (xmalloc.o): Add dependency for config.h, fixes make -j3. 2000-05-24 01:46:44 +00:00
libio Update. 2000-05-24 07:06:31 +00:00
libjava ObjectOutputStream.java (writeObject): Use component type when writing arrays. 2000-05-24 21:15:51 +00:00
libobjc
libstdc++ Makefile.in: Change "pic" to depend on $(PICFLAG), not on $(enable_shared). 2000-05-15 22:59:31 -04:00
libstdc++-v3 acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): If strtoll isn't available, force --disable. 2000-05-26 19:59:46 +00:00
texinfo
zlib
.cvsignore
ChangeLog * configure.in (hppa*64*-*-*): Do build ld for this configuration. 2000-05-18 11:04:14 -06:00
config-ml.in
config.guess
config.if
config.sub * config.sub (basic_machine): Recognize hppa64 as a valid cpu type. 2000-05-12 11:23:03 -06:00
configure
configure.in * configure.in (hppa*64*-*-*): Do build ld for this configuration. 2000-05-18 11:04:14 -06:00
COPYING
COPYING.LIB
install-sh
ltconfig
ltmain.sh
MAINTAINERS Add self as write after approval. 2000-05-15 03:41:13 +00:00
Makefile.in Makefile.in (configure-target-libiberty): Depend on configure-target-newlib. 2000-05-18 04:15:51 +00:00
missing
mkinstalldirs
move-if-change
README
symlink-tree
ylwrap

		   README for GNU development tools

This directory contains various GNU compilers, assemblers, linkers, 
debuggers, etc., plus their support routines, definitions, and documentation.


Check the INSTALL directory for detailed configuration and installation
instructions.


Much of the code and documentation enclosed is copyright by
the Free Software Foundation, Inc.  See the file COPYING or
COPYING.LIB in the various directories, for a description of the
GNU General Public License terms under which you can copy the files.

REPORTING BUGS: Again, see gdb/README, binutils/README, etc., for info
on where and how to report problems.