[namespace.udecl] Lack a sufficient rule to specify using-declaration cannot refer to a destructor
Nobody has claimed this yet.
- Dominant language
- TeX
- Stars
- 221
- Forks
- 813
- Avg merge
- 16h 4m
- Merged PRs (30d)
- 36
Description
In the current draft, we merely have a note in [namespace.udecl] p4, which says
[Note 2: Since destructors do not have names, a using-declaration cannot refer to a destructor for a base class. — end note]
However, a destructor is similar to a constructor in most respects. A constructor does not have a name as per [class.ctor.general] p1 but it can be referred to by a using-declaration. Again, a constructor can be found, as per [class.qual] p1, a destructor can also be found as per [basic.lookup.qual.general] p4. We explicitly say a using-declaration can name a constructor but we do not have a formal rule that specifies a using-declaration cannot refer to a destructor. We expect that there is a formal rule in [namespace.udecl] as like:
the unqualified-id in a using-declarator shall not denote a destructor.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read [namespace.udecl] p4 alongside the cited [class.ctor.general] p1, [class.qual] p1, and [basic.lookup.qual.general] p4. Update the draft so the rule governing a using-declarator explicitly addresses destructors, then verify that the wording matches the surrounding constructor and lookup rules.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- documentation
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 35/100