This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/19497] [3.4/4.0/4.1 regression] Invalid declaration in template diagnosed too late


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-06-08 11:49 -------
Subject: Bug 19497

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	nathan@gcc.gnu.org	2005-06-08 11:49:24

Modified files:
	gcc/cp         : ChangeLog class.c cp-tree.def cp-tree.h 
	                 cxx-pretty-print.c name-lookup.c name-lookup.h 
	                 pt.c search.c semantics.c 
	gcc/testsuite  : ChangeLog 
Added files:
	gcc/testsuite/g++.dg/inherit: using5.C using6.C 

Log message:
	cp:
	PR c++/19497
	* cp-tree.def (USING_DECL): Update documentation.
	* cp-tree.h (DECL_DEPENDENT_P): New.
	(USING_DECL_DECLS, USING_DECL_SCOPE): New.
	* class.c (handle_using_decl): Move most of the processing to ...
	* name-lookup.c (do_class_using_decl): ... here.  Make stricter.
	(push_using_decl): Use USING_DECL_SCOPE.
	(cp_emit_debug_info_for_using): Make extern.
	* cxx-pretty-print.c (pp_cxx_statement) <USING_DECL case>: Adjust.
	* name-lookup.h (cp_emit_debug_info_for_using): Declare.
	* pt.c (tsubst_decl) <USING_DECL case>: Use do_class_using_decl
	when tsubsting.
	(tsubst_expr): Use USING_DECL_SCOPE.
	* search.c (lookup_field_1): Use DECL_DEPENDENT_P.
	* semantics.c (finish_member_declaration): Likewise.
	testsuite:
	PR c++/19497
	* g++.dg/inherit/using5.C: New.
	* g++.dg/inherit/using6.C: New.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&r1=1.4782&r2=1.4783
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/class.c.diff?cvsroot=gcc&r1=1.719&r2=1.720
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/cp-tree.def.diff?cvsroot=gcc&r1=1.104&r2=1.105
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/cp-tree.h.diff?cvsroot=gcc&r1=1.1143&r2=1.1144
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/cxx-pretty-print.c.diff?cvsroot=gcc&r1=1.34&r2=1.35
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/name-lookup.c.diff?cvsroot=gcc&r1=1.122&r2=1.123
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/name-lookup.h.diff?cvsroot=gcc&r1=1.40&r2=1.41
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/pt.c.diff?cvsroot=gcc&r1=1.1004&r2=1.1005
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/search.c.diff?cvsroot=gcc&r1=1.346&r2=1.347
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/semantics.c.diff?cvsroot=gcc&r1=1.474&r2=1.475
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.5613&r2=1.5614
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/inherit/using5.C.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/inherit/using6.C.diff?cvsroot=gcc&r1=NONE&r2=1.1



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19497


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]