10 Apr
2017
10 Apr
'17
8:40 p.m.
On Mon, Apr 10, 2017 at 2:48 PM, Peter Dimov via Boost
The obvious theoretically consistent approach here is
void(foo::*)(float, char, int) -> tuple
It depends on what the theory is. If the model is "type of the implicit object parameter during overload resolution", then foo& is the correct choice (see [over.match.funcs]/4). If the model is "type of the class, decorated to reflect the cv-qualifier-seq and ref-qualifier, if any", then foo would be the natural result. The first model seems more useful to me, even if lossy.