Title
What is a member function template?
Status
tc1
Section
13.7.2.2 [temp.mem.func]
Submitter
David Thornley

Created on 2000-10-11.00:00:00 last changed 25 months ago

Messages

Date: 2000-10-15.00:00:00

Proposed resolution (10/00): As suggested.

Date: 2022-11-20.07:54:16

Suggested resolution:

Change "member function template" to "member function of a class template" in both 6.3 [basic.def.odr] paragraph 5 and 13.7.2.2 [temp.mem.func] paragraph 1.

(See also issue 205.)

Proposed resolution (10/00): As suggested.

Date: 2022-09-25.18:08:42

The phrase "member function template" is used in 6.3 [basic.def.odr] paragraph 5 in the list of entities whose definitions can appear more than once in a program, with a cross-reference to 13.7.2.2 [temp.mem.func]. The title of that section is "Member functions of class templates," and paragraph 1 of that section says,

A member function template may be defined outside of the class template in which it is declared.

The example in that paragraph shows a non-template member function of a class template being defined. This gives the impression that the phrase "member function template" is intended to refer to a member function of a class template.

If this usage were intended, much of the rest of the Standard would be unintelligible: objects of class template specializations could not be copied (11.4.5.3 [class.copy.ctor] paragraph 3), member functions of class templates could not be declared virtual (13.7.3 [temp.mem] paragraph 3), etc.

History
Date User Action Args
2022-02-18 07:47:23adminsetmessages: + msg6659
2003-04-25 00:00:00adminsetstatus: dr -> tc1
2000-11-18 00:00:00adminsetmessages: + msg452
2000-10-11 00:00:00admincreate