template-ids as unqualified-ids
_N4567_.5.1.1 [expr.prim.general]
Mike Miller

Created on 1999-06-03.00:00:00 last changed 162 months ago


Date: 2001-10-15.00:00:00

[Moved to DR at 10/01 meeting.]

Date: 2000-10-15.00:00:00

Proposed resolution (10/00):

Remove the referenced sentence altogether.

Date: 2021-02-24.00:00:00

_N4567_.5.1.1 [expr.prim.general] paragraph 11 reads,

A template-id shall be used as an unqualified-id only as specified in 13.9.3 [temp.explicit] , 13.9 [temp.spec] , and _N4868_.13.7.6 [temp.class.spec] .

What uses of template-ids as unqualified-ids is this supposed to prevent? And is the list of referenced sections correct/complete? For instance, what about 13.10.2 [temp.arg.explicit], "Explicit template argument specification?" Does its absence from the list in _N4567_.5.1.1 [expr.prim.general] paragraph 11 mean that "f<int>()" is ill-formed?

This is even more confusing when you recall that unqualified-ids are contained in qualified-ids:

qualified-id: ::opt nested-name-specifier templateopt unqualified-id

Is the wording intending to say "used as an unqualified-id that is not part of a qualified-id?" Or something else?

Date User Action Args
2008-10-05 00:00:00adminsetstatus: wp -> cd1
2003-04-25 00:00:00adminsetstatus: dr -> wp
2002-05-10 00:00:00adminsetmessages: + msg665
2001-11-09 00:00:00adminsetstatus: ready -> dr
2001-05-20 00:00:00adminsetstatus: review -> ready
2000-11-18 00:00:00adminsetmessages: + msg408
2000-11-18 00:00:00adminsetstatus: open -> review
1999-06-03 00:00:00admincreate