Created on 2024-10-25.00:00:00 last changed 3 weeks ago
(From submission #629.)
Subclause 9.3.4.6 [dcl.fct] paragraph 3 highlights a (singular) pack in a function's parameter-type-list:
The type of a function is determined using the following rules. The type of each parameter (including function parameter packs) is determined from its own parameter-declaration (9.3 [dcl.decl]). After determining the type of each parameter, any parameter of type “array of T” or of function type T is adjusted to be “pointer to T”. After producing the list of parameter types, any top-level cv-qualifier s modifying a parameter type are deleted when forming the function type. The resulting list of transformed parameter types and the presence or absence of the ellipsis or a function parameter pack is the function's parameter-type-list.
The property of being a pack is part of the parameter type as determined by the parameter-declaration, plus there could be multiple packs involved.
Possible resolution
Change in 9.3.4.6 [dcl.fct] paragraph 3 as follows:
The type of a function is determined using the following rules. The type of each parameter (including function parameter packs) is determined from its own parameter-declaration (9.3 [dcl.decl]). After determining the type of each parameter, any parameter of type “array of T” or of function type T is adjusted to be “pointer to T”. After producing the list of parameter types, any top-level cv-qualifier s modifying a parameter type are deleted when forming the function type. The resulting list of transformed parameter types and the presence or absence of the ellipsisor a function parameter packis the function's parameter-type-list.
History | |||
---|---|---|---|
Date | User | Action | Args |
2024-10-25 00:00:00 | admin | create |