Created on 2026-05-05.00:00:00 last changed 5 days ago
Proposed resolution:
This wording is relative to N5032.
Modify [meta.reflection.substitute] as indicated:
-1- Let TARG-SPLICE(x) be:
(1.1) —
`template [: x :]`a template-argument that denotes what x represents if `is_template(x)` is `true`, otherwise(1.2) — `typename [: x :]` if `is_type(x)` is `true`, otherwise
(1.3) — `([: x :])`.
The use of `template [: x :]` (introduced in LWG 4316) is incorrect: `template [: x :]` is a splice-expression (which can only designate a function template or variable template), and an unparenthesized splice-expression is not allowed as a template-argument per [temp.names]/6.
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2026-05-09 14:08:52 | admin | set | messages: + msg16291 |
| 2026-05-05 00:00:00 | admin | create | |