-
Notifications
You must be signed in to change notification settings - Fork 266
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
The D0708/A.4 Section "Multiple in and/or forward in the same definite last use" section has wording for avoiding an exponential number of function calls, but I don't think it does that.
In cpp2:
void func(auto&& w, auto&& x, auto&& y, auto&& z);
f: (in w : std::string, in x : std::string, in z : std::string, in w : std::string) = {
func(w, x, y, z);
}I would expect a 16-way switch here, as each of the four invented parameters of func will be deduced as either std::string or const std::string&. What is the utility of the four bullet-point subsumption language? You have to perform OR for each combination of argument value categories, and you're necessarily locked into the bad brute-force implementation.
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working