[C++ PATCH] Variadic templates, third revision (2/3)

Doug Gregor doug.gregor@gmail.com
Wed Nov 1 16:19:00 GMT 2006


This patch addresses PR c++/20599 by introducing support for variadic
templates:

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

This is the third revision of the variadic templates patch. It
addresses several small bugs, cleans up the terminology used in the
patch, tweaks the syntax slightly, and allows the use of variadic
templates in several more C++ contexts:

  - Base specifier list
  - Throw specifier list
  - Initializer list
  - Base class initializer list

This patch is dependent on the experimental C++0x mode patch, posted here:

  http://gcc.gnu.org/ml/gcc-patches/2006-11/msg00024.html

More information about variadic templates is available here:

  http://www.generic-programming.org/~dgregor/cpp/variadic-templates.html

This is part 2 of 3. It contains tests for variadic templates.

Tested on mainline with i686-pc-linux-gnu; no new regressions. All new
tests pass.

Okay for mainline?

	Doug Gregor
	Open Systems Lab @ Indiana University

2006-11-01 	Douglas Gregor <doug.gregor@gmail.com>

	PR c++/20599
	* g++.dg/template/variadic-bind.C: New.
	* g++.dg/template/variadic-function.C: New.
	* g++.dg/template/variadic-mem_fn.C: New.
	* g++.dg/template/variadic-tuple.C: New.
	* g++.dg/template/variadic1.C: New.
	* g++.dg/template/variadic2.C: New.
	* g++.dg/template/variadic3.C: New.
	* g++.dg/template/variadic4.C: New.
	* g++.dg/template/variadic5.C: New.
	* g++.dg/template/variadic6.C: New.
	* g++.dg/template/variadic7.C: New.
	* g++.dg/template/variadic8.C: New.
	* g++.dg/template/variadic9.C: New.
	* g++.dg/template/variadic10.C: New.
	* g++.dg/template/variadic11.C: New.
	* g++.dg/template/variadic12.C: New.
	* g++.dg/template/variadic13.C: New.
	* g++.dg/template/variadic14.C: New.
	* g++.dg/template/variadic15.C: New.
	* g++.dg/template/variadic16.C: New.
	* g++.dg/template/variadic17.C: New.
	* g++.dg/template/variadic18.C: New.
	* g++.dg/template/variadic19.C: New.
	* g++.dg/template/variadic20.C: New.
	* g++.dg/template/variadic21.C: New.
	* g++.dg/template/variadic22.C: New.
	* g++.dg/template/variadic23.C: New.
	* g++.dg/template/variadic24.C: New.
	* g++.dg/template/variadic25.C: New.
	* g++.dg/template/variadic26.C: New.
	* g++.dg/template/variadic27.C: New.
	* g++.dg/template/variadic28.C: New.
	* g++.dg/template/variadic29.C: New.
	* g++.dg/template/variadic30.C: New.
	* g++.dg/template/variadic31.C: New.
	* g++.dg/template/variadic32.C: New.
	* g++.dg/template/variadic33.C: New.
	* g++.dg/template/variadic34.C: New.
	* g++.dg/template/variadic35.C: New.
	* g++.dg/template/variadic36.C: New.
	* g++.dg/template/variadic37.C: New.
	* g++.dg/template/variadic38.C: New.
	* g++.dg/template/variadic39.C: New.
	* g++.dg/template/variadic40.C: New.
	* g++.dg/template/variadic41.C: New.
	* g++.dg/template/variadic42.C: New.
	* g++.dg/template/variadic43.C: New.
	* g++.dg/template/variadic44.C: New.
	* g++.dg/template/variadic45.C: New.
	* g++.dg/template/variadic46.C: New.
	* g++.dg/template/variadic47.C: New.
	* g++.dg/template/variadic48.C: New.
	* g++.dg/template/variadic49.C: New.
	* g++.dg/template/variadic50.C: New.
	* g++.dg/template/variadic51.C: New.
	* g++.dg/template/variadic52.C: New.
	* g++.dg/template/variadic53.C: New.
	* g++.dg/template/variadic54.C: New.
	* g++.dg/template/variadic55.C: New.
	* g++.dg/template/variadic56.C: New.
	* g++.dg/template/variadic57.C: New.
	* g++.dg/template/variadic58.C: New.
	* g++.dg/template/variadic59.C: New.
        * g++.dg/template/variadic60.C : New.
        * g++.dg/template/variadic61.C : New.
        * g++.dg/template/variadic62.C : New.
        * g++.dg/template/variadic63.C : New.
        * g++.dg/template/variadic64.C : New.
        * g++.dg/template/variadic65.C : New.
        * g++.dg/template/variadic66.C : New.
        * g++.dg/template/variadic67.C : New.
        * g++.dg/template/variadic68.C : New.	
        * g++.dg/template/variadic69.C : New.
	* g++.dg/template/variadic70.C : New.
	* g++.dg/template/variadic71.C : New.
	* g++.dg/template/variadic72.C : New.
	* g++.dg/template/variadic73.C : New.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vt-testsuite-trunk-v3.patch
Type: text/x-patch
Size: 70275 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20061101/c363d6f1/attachment.bin>


More information about the Gcc-patches mailing list