[Bug c++/84689] is_invocable is true even for call operator via ambiguous base
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84689 Patrick Palka changed: What|Removed |Added Target Milestone|--- |11.0 Status|NEW |RESOLVED Resolution|--- |FIXED CC||ppalka at gcc dot gnu.org --- Comment #5 from Patrick Palka --- Apparently fixed for GCC 11.
[Bug c++/84689] is_invocable is true even for call operator via ambiguous base
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84689 --- Comment #4 from CVS Commits --- The master branch has been updated by Patrick Palka : https://gcc.gnu.org/g:3275f2e2af24541f55462c23af4c6530ac12c5e2 commit r12-70-g3275f2e2af24541f55462c23af4c6530ac12c5e2 Author: Patrick Palka Date: Thu Apr 22 13:32:44 2021 -0400 c++: Add testcase for already fixed PR [PR84689] We correctly accept this testcase since r11-1638. gcc/testsuite/ChangeLog: PR c++/84689 * g++.dg/cpp0x/sfinae67.C: New test.
[Bug c++/84689] is_invocable is true even for call operator via ambiguous base
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84689 Jonathan Wakely changed: What|Removed |Added CC||vittorio.romeo at outlook dot com --- Comment #3 from Jonathan Wakely --- *** Bug 80245 has been marked as a duplicate of this bug. ***
[Bug c++/84689] is_invocable is true even for call operator via ambiguous base
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84689 --- Comment #2 from Jonathan Wakely --- *** Bug 84690 has been marked as a duplicate of this bug. ***
[Bug c++/84689] is_invocable is true even for call operator via ambiguous base
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84689 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2018-03-05 Ever confirmed|0 |1
[Bug c++/84689] is_invocable is true even for call operator via ambiguous base
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84689 TC changed: What|Removed |Added CC||rs2740 at gmail dot com --- Comment #1 from TC --- With library dependency removed: struct base { void operator()(int ) { } }; struct a : base { }; struct b : base { }; struct f: a, b { using a::operator(); using b::operator(); }; template auto g(int) -> decltype(T()(0), 0); template auto g(...) -> long; template struct Same; template struct Same {}; Same(0)), long> s; Accepted by clang, rejected by gcc, who thinks that decltype(g(0)) is int.