r225706 - in /trunk/gcc: cp/ChangeLog cp/error....

ppalka@gcc.gnu.org ppalka@gcc.gnu.org
Fri Jul 10 23:21:00 GMT 2015


Author: ppalka
Date: Fri Jul 10 23:21:39 2015
New Revision: 225706

URL: https://gcc.gnu.org/viewcvs?rev=225706&root=gcc&view=rev
Log:
Fix PR c++/30044

gcc/cp/ChangeLog:

	PR c++/30044
	* pt.c (begin_template_parm_list): Add a dummy parameter level
	to current_template_parms.
	(end_template_parm_list): Remove the dummy parameter level
	before adding the real one.
	(tsubst): Don't attempt to substitute for template parameters
	corresponding to a dummy argument level.
	(template_parms_to_args): Remove obsolete hack for
	giving template template arguments the proper level.
	(splite_late_return_type): Remove obsolete hack for giving
	template template arguments the proper level.
	* error.c (dump_template_decl): Don't print dummy template
	levels.

gcc/testsuite/ChangeLog

	PR c++/30044
	* g++.dg/cpp0x/auto46.C: New test.
	* g++.dg/template/pr30044.C: New test.
	* g++.dg/template/shadow2.C: New test.
	* g++.dg/template/error55.C: New test.
	* g++.dg/template/crash83.C: Accept any error string.
	* g++.dg/cpp0x/variadic18.C: Adjust to avoid shadowing template
	parameters.
	* g++.dg/cpp0x/variadic18.C: Likewise
	* g++.dg/template/canon-type-13.C: Likewise.
	* g++.old-deja/g++.pt/ttp42.C: Likewise.
	* g++.dg/torture/20070621-1.C: Likewise.


Added:
    trunk/gcc/testsuite/g++.dg/cpp0x/auto46.C
    trunk/gcc/testsuite/g++.dg/template/error55.C
    trunk/gcc/testsuite/g++.dg/template/pr30044.C
    trunk/gcc/testsuite/g++.dg/template/shadow2.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/error.c
    trunk/gcc/cp/pt.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/g++.dg/cpp0x/variadic18.C
    trunk/gcc/testsuite/g++.dg/cpp0x/variadic19.C
    trunk/gcc/testsuite/g++.dg/template/canon-type-13.C
    trunk/gcc/testsuite/g++.dg/template/crash83.C
    trunk/gcc/testsuite/g++.dg/torture/20070621-1.C
    trunk/gcc/testsuite/g++.old-deja/g++.pt/ttp42.C



More information about the Gcc-cvs mailing list