- Title
- What is the “first declaration” of an explicit specialization?
- Status
- cd2
- Section
- 9.6 [dcl.fct.def]
- Submitter
- Daveed Vandevoorde
Created on 2009-03-20.00:00:00 last changed 199 months ago
Messages
Date: 2010-03-15.00:00:00
[Voted into WP at March, 2010 meeting.]
Date: 2009-10-15.00:00:00
Notes from the October, 2009 meeting: It was observed that this specification is complicated by the fact
that the “first declaration” of a function might be in a
block-extern declaration.
Date: 2009-10-15.00:00:00
Proposed resolution (October, 2009): (This resolution also resolves issue 915.)
A deleted definition of a function shall be the first declaration of
the function or, for an explicit specialization of a function
template, the first declaration of that specialization.
Date: 2009-11-08.00:00:00
According to 9.6 [dcl.fct.def] paragraph 10, The Standard is not currently clear about what the “first
declaration” of an explicit specialization of a function
template is. For example,
A deleted definition of a function shall be the first declaration of
the function.
template<typename T> void f() { }
template<> void f<int>() = delete; // First declaration?
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2010-03-29 00:00:00 | admin | set | messages: + msg2709 |
| 2010-03-29 00:00:00 | admin | set | status: ready -> cd2 |
| 2009-11-08 00:00:00 | admin | set | messages: + msg2362 |
| 2009-11-08 00:00:00 | admin | set | messages: + msg2361 |
| 2009-11-08 00:00:00 | admin | set | status: open -> ready |
| 2009-03-20 00:00:00 | admin | create | |