Customization point objects should be invocable as non-const too
Tim Song

Created on 2020-12-15.00:00:00 last changed 1 month ago


Date: 2021-06-13.00:00:00

[ 2021-06-13 Resolved by the adoption of P2281R1 at the June 2021 plenary. Status changed: New → Resolved. ]

Date: 2021-01-15.00:00:00

[ 2021-01-15; Telecon prioritization ]

Set priority to 3 following reflector and telecon discussions.

Date: 2020-12-15.00:00:00

[customization.point.object] promises that customization point objects are semiregular and that all copies are equal, which permits copies to be freely made. In C++, making copies tends to drop cv-qualification, but there does not appear to be anything that guarantees that you can invoke these objects as non-const (or as rvalues, for that matter).

It is possible that the use of invocable<const F&, Args...> here was meant to bring in implicit expression variations, but P2102R0 has since clarified that this formulation doesn't do that.

Date User Action Args
2021-06-14 14:09:26adminsetmessages: + msg11926
2021-06-14 14:09:26adminsetstatus: new -> resolved
2021-01-15 21:45:23adminsetmessages: + msg11652
2020-12-15 00:00:00admincreate