pt.c (begin_member_template_processing): Take a function as argument, not a set of...
authorMark Mitchell <mmitchell@usa.net>
Mon, 8 Sep 1997 09:28:51 +0000 (09:28 +0000)
committerJason Merrill <jason@gcc.gnu.org>
Mon, 8 Sep 1997 09:28:51 +0000 (05:28 -0400)
commit786b5245966e3e9b710015ce7fd28992391d891b
tree947c04ec83511b3bab40eb322bd28e8bcd75c265
parent267c09ab53236587a4f5c4412182885daab79fce
pt.c (begin_member_template_processing): Take a function as argument, not a set of template arguments.

Mon Sep  8 01:21:43 1997  Mark Mitchell  <mmitchell@usa.net>

* pt.c (begin_member_template_processing): Take a function as
argument, not a set of template arguments.  Use the template
parameters, rather than the arguments.  Handle non-type parameters
correctly.  Push a binding level for the parameters so that multiple
member templates using the same parameter names can be declared.
(end_member_template_processing): Pop the binding level.
(push_template_decl): Mark member templates as static when
appropriate.

* lex.c (do_pending_inlines): Pass the function, not its template
arguments, to begin_member_template_processing.
(process_next_inline): Likewise.
(do_pending_defargs): Likewise.

* error.c (dump_expr): Obtain the correct declaration for a
TEMPLATE_CONST_PARM.

* call.c (add_template_conv_candidate): New function.
(build_object_call): Handle member templates, as done in the other
build_ functions.

From-SVN: r15155
gcc/cp/ChangeLog
gcc/cp/call.c
gcc/cp/error.c
gcc/cp/lex.c
gcc/cp/pt.c