Go to file
Mark Mitchell b34459943b re PR c++/11493 (tree check ICE in error.c)
* cp-tree.h (cp_id_kind): New type.
	(unqualified_name_lookup_error): Change prototype.
	(unqualified_fn_lookup_error): New function.
	(do_identifier): Remove.
	(do_scoped_id): Likewise.
	(tsubst_copy_and_build): Change prototype.
	(reregister_specialization): New function.
	(perform_koenig_lookup): Likewise.
	(finish_id_expression): Likewise.
	* call.c (build_method_call): Adjust call to
	unqualified_name_lookup_error.
	* decl.c (duplicate_decls): Use reregister_specialization.
	* lex.c (is_global): Remove.
	(unqualified_name_lookup_error): Return a value.
	(do_identifier): Remove.
	(do_scoped_id): Likewise.
	(identifier_typedecl_value): Remove.
	(unqualified_fn_lookup_error): New function.
	* parser.c (cp_parser_id_kind): Remove.
	(cp_parser_non_constant_id_expression): Remove.
	(cp_parser_primary_expression): Use finish_id_expression.
	(cp_parser_class_or_namespace_name): Use cp_id_kind, not
	cp_parser_id_kind.
	(cp_parser_postfix_expression): Use perform_koenig_lookup.
	(cp_parser_template_argument): Use cp_id_kind.
	(cp_parser_fold_non_dependent_expr): Adjust call to
	tsubst_copy_and_build.
	* pt.c (unregister_specialization): Rename to ...
	(reregister_specialization): This.
	(tsubst_friend_function): Use it.
	(maybe_fold_nontype_arg): Adjust call to tsubst_copy_and_build.
	(tsubst_qualified_id): Likewise.
	(tsubst_expr): Likewise.
	(tsubst_copy_and_build): Add function_p parameter.  Use
	finish_id_expression.  Introduce RECUR macro.
	(tsubst_non_call_postfix_expression): New function.
	(regenerate_decl_from_template): Use reregister_specialization.
	* semantics.c (perform_koenig_lookup): New function.
	(finish_id_expression): Likewise.

	PR c++/11493
	PR c++/11495
	* g++.dg/parse/template9.C: Likewise.
	* g++.dg/template/crash4.C: New test.
	* g++.dg/template/koenig1.C: Likewise.
	* g++.old-deja/g++.benjamin/tem03.C: Adjust error markers.
	* g++.old-deja/g++.benjamin/tem06.C: Declare "x".
	* g++.old-deja/g++.jason/overload33.C: Use this-> when calling
	functions.
	* g++.old-deja/g++.jason/template36.C: Likewise.
	* g++.old-deja/g++.mike/p1989.C: Likewise.
	* g++.old-deja/g++.pt/lookup2.C: Use -fpermissive when compiling.
	* g++.old-deja/g++.pt/ttp20.C: Use this->.
	* g++.old-deja/g++.pt/ttp21.C: Use this->.
	* g++.old-deja/g++.pt/typename13.C: Use -fpermissive when
	compiling.
	* g++.old-deja/g++.pt/union2.C: Use this->.

From-SVN: r69316
2003-07-14 03:04:29 +00:00
boehm-gc
config Makefile.tpl (configure-gcc): Depend on maybe-configure-intl. 2003-07-08 05:55:11 +00:00
contrib * gcc_update: gcc/acconfig.h no longer exists. 2003-07-12 21:32:36 +00:00
fastjar * README: Note that FastJar is not part of GCC. 2003-07-11 21:48:39 +00:00
gcc re PR c++/11493 (tree check ICE in error.c) 2003-07-14 03:04:29 +00:00
include * xtensa-config.h: Undef all macros before defining them. 2003-07-10 05:08:27 +00:00
INSTALL
intl Makefile.tpl (configure-gcc): Depend on maybe-configure-intl. 2003-07-08 05:55:11 +00:00
libf2c Makefile.tpl: Replace PWD with PWD_COMMAND. 2003-07-04 12:45:55 -07:00
libffi README: Note that libffi is not part of GCC. 2003-07-11 22:13:16 +00:00
libiberty pex-win32.c (pexecute): Mark parameters this_pname and temp_base as unused. 2003-07-05 00:52:07 +00:00
libjava * libjava.verify/verify.exp: Fixed variable init. 2003-07-13 23:33:02 +00:00
libobjc Fixed rare threading problem 2003-07-10 09:24:51 +00:00
libstdc++-v3 c_locale.h: Include <cstdlib> and <cstring>. 2003-07-14 02:52:05 +00:00
maintainer-scripts gcc_release (announce_snapshot): Add substitution of @RELEASE@ for README and index.html. 2003-07-13 22:10:03 +00:00
zlib re PR bootstrap/7126 (zlib version is wrong in zlib/configure.in) 2003-07-12 02:04:33 +00:00
.cvsignore
ABOUT-NLS intl: New directory; see intl/ChangeLog for details. 2003-07-04 18:18:54 +00:00
ChangeLog re PR bootstrap/11273 (make install fails in libobjc directory) 2003-07-13 20:47:31 +00:00
config-ml.in Makefile.tpl: Replace PWD with PWD_COMMAND. 2003-07-04 12:45:55 -07:00
config.guess config.guess: Update to 2003-06-12 version. 2003-06-14 07:08:09 -07:00
config.if
config.rpath intl: New directory; see intl/ChangeLog for details. 2003-07-04 18:18:54 +00:00
config.sub config.guess: Update to 2003-06-12 version. 2003-06-14 07:08:09 -07:00
configure re PR bootstrap/11273 (make install fails in libobjc directory) 2003-07-13 20:47:31 +00:00
configure.in re PR bootstrap/11273 (make install fails in libobjc directory) 2003-07-13 20:47:31 +00:00
COPYING
COPYING.LIB
install-sh
libtool.m4
ltcf-c.sh
ltcf-cxx.sh
ltcf-gcj.sh
ltconfig
ltmain.sh
MAINTAINERS * MAINTAINERS: Alphabetize. 2003-07-13 16:15:38 +00:00
Makefile.def Makefile.def: Introduce flags_to_pass. 2003-06-23 20:34:26 +00:00
Makefile.in re PR bootstrap/11273 (make install fails in libobjc directory) 2003-07-13 20:47:31 +00:00
Makefile.tpl re PR bootstrap/11273 (make install fails in libobjc directory) 2003-07-13 20:47:31 +00:00
missing
mkdep
mkinstalldirs
move-if-change
README
symlink-tree
ylwrap

This directory contains the GNU Compiler Collection (GCC).

The GNU Compiler Collection is free software.  See the file COPYING
for copying permission.  The manuals, and some of the runtime
libraries, are under different terms; see the individual source files
for details.

The directory INSTALL contains copies of the installation information
as HTML and plain text.  The source of this information is
gcc/doc/install.texi.  The installation information includes details
of what is included in the GCC sources and what files GCC installs.

See the file gcc/doc/gcc.texi (together with other files that it
includes) for usage and porting information.  An online readable
version of the manual is in the files gcc/doc/gcc.info*.

See http://gcc.gnu.org/bugs.html for how to report bugs usefully.