https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77548
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jakub at gcc dot gnu.org
--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
In r147630 this has been rejected with:
pr77548.C: In member function ‘int S::f(int)’:
pr77548.C:6: error: could not convert ‘((S*)this)->S::f’ to ‘bool’
r147702 already ICEs, so likely r147638 or r147677 introduced the ICE.
The current trunk rejects it again with:
pr77548.C: In member function ‘int S::f(int)’:
pr77548.C:4:31: error: cannot resolve overloaded function ‘f’ based on
conversion to type ‘bool’
int f (int) { return f ? : 1; }
^
will bisect when that happened later.
clang++ emits:
pr77548.C:4:25: error: reference to non-static member function must be called;
did you mean to call it with no arguments?
int f (int) { return f ? : 1; }
^
()
pr77548.C:4:7: note: possible target for call
int f (int) { return f ? : 1; }
^
pr77548.C:3:7: note: possible target for call
int f (void) { return 0; }
^
1 error generated.