[Bug c++/84689] is_invocable is true even for call operator via ambiguous base

2021-04-22 Thread ppalka at gcc dot gnu.org via Gcc-bugs
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

2021-04-22 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
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

2018-03-05 Thread redi at gcc dot gnu.org
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

2018-03-05 Thread redi at gcc dot gnu.org
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

2018-03-05 Thread redi at gcc dot gnu.org
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

2018-03-03 Thread rs2740 at gmail dot com
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 s;

Accepted by clang, rejected by gcc, who thinks that decltype(g(0)) is int.