Title
Are implementations allowed to split non-member functions into several overloads?
Status
nad
Section
[global.functions]
Submitter
Morwenn

Created on 2017-02-04.00:00:00 last changed 94 months ago

Messages

Date: 2017-03-15.00:00:00

[ 2017-03-04, Kona ]

We believe that [member.functions]p2 is clear.

Date: 2017-02-19.13:40:36

Section [member.functions] makes it clear that standard library implementers are allowed to "replace a member function with default arguments with two or more member functions with equivalent behavior". However, it is unclear when reading [global.functions] whether implementers are allowed to perform the same transformation for non-member functions. [global.functions] p3 mentions that "an implementation shall not declare a non-member function signature with additional default arguments", but does not explicitly forbid to replace a function with default arguments with more functions with equivalent behavior.

The standard should make it clear whether such a transformation is conforming or not, probably through a note [global.functions].

Link to the Standard Discussion forum.

History
Date User Action Args
2017-03-14 03:14:09adminsetmessages: + msg9114
2017-03-14 03:14:09adminsetstatus: new -> nad
2017-02-04 00:00:00admincreate