[Bug libstdc++/80564] bind on SFINAE unfriendly generic lambda

2017-05-04 Thread colu...@gmx-topmail.de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80564 --- Comment #7 from Robert Haberlach --- Oh, damn. "Submit only my new comment" does not what I thought it does. :-)

[Bug libstdc++/80564] bind on SFINAE unfriendly generic lambda

2017-05-04 Thread colu...@gmx-topmail.de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80564 --- Comment #6 from Robert Haberlach --- (In reply to TC from comment #4) > (In reply to Eric Fiselier from comment #3) > > Here is an example of why `_Bind::operator()(...) const` must be considered > > during overload

[Bug libstdc++/80564] bind on SFINAE unfriendly generic lambda

2017-05-04 Thread r.hl at gmx dot net
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80564 --- Comment #5 from r.hl at gmx dot net --- See also the discussion on Phabricator: https://reviews.llvm.org/D32824 I agree; AFAICS [func.bind.bind] is clear on this: the type of the Func object used to call the member operator() is non-const.

[Bug libstdc++/80564] bind on SFINAE unfriendly generic lambda

2017-05-04 Thread rs2740 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80564 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #4 from TC

[Bug libstdc++/80564] bind on SFINAE unfriendly generic lambda

2017-05-03 Thread eric at efcs dot ca
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80564 --- Comment #3 from Eric Fiselier --- Here is an example of why `_Bind::operator()(...) const` must be considered during overload resolution even if the call wrapper itself is not const. -- #include struct Func {

[Bug libstdc++/80564] bind on SFINAE unfriendly generic lambda

2017-05-03 Thread eric at efcs dot ca
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80564 --- Comment #2 from Eric Fiselier --- Note that explicitly providing a return type for the lambda avoids this compile error. Example: --- #include int main() { int i; std::bind([] (auto& x) -> void {x = 1;}, i)(); // OK! } ---

[Bug libstdc++/80564] bind on SFINAE unfriendly generic lambda

2017-05-03 Thread eric at efcs dot ca
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80564 Eric Fiselier changed: What|Removed |Added CC||eric at efcs dot ca --- Comment #1 from