[Bug c++/68093] [concepts] friend function declarations that differ only by constraints are rejected as redefinitions
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68093 Patrick Palka changed: What|Removed |Added Status|NEW |RESOLVED Target Milestone|--- |10.0 Resolution|--- |FIXED CC||ppalka at gcc dot gnu.org --- Comment #6 from Patrick Palka --- Looks like this is fully fixed as of GCC 10.
[Bug c++/68093] [concepts] friend function declarations that differ only by constraints are rejected as redefinitions
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68093 Jeff Chapman changed: What|Removed |Added CC||jeff.chapman.bugs at gmail dot com --- Comment #5 from Jeff Chapman --- Created attachment 46916 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46916=edit Patch against concepts-cxx2a to add test (git format-patch format) This appears to be fixed on concepts-cxx2a. Patch adds a test for the rejects-valid and accepts-invalid cases.
[Bug c++/68093] [concepts] friend function declarations that differ only by constraints are rejected as redefinitions
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68093 --- Comment #4 from Jonathan Wakely --- This is the accepts-invalid example from PR 86978: template struct S { template requires false friend void foobar(S, t2) {} }; int main() { foobar(S{}, int{}); }
[Bug c++/68093] [concepts] friend function declarations that differ only by constraints are rejected as redefinitions
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68093 --- Comment #3 from Jonathan Wakely --- *** Bug 86978 has been marked as a duplicate of this bug. ***
[Bug c++/68093] [concepts] friend function declarations that differ only by constraints are rejected as redefinitions
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68093 Jonathan Wakely changed: What|Removed |Added Keywords||rejects-valid Status|UNCONFIRMED |NEW Last reconfirmed||2018-08-16 Ever confirmed|0 |1
[Bug c++/68093] [concepts] friend function declarations that differ only by constraints are rejected as redefinitions
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68093 Hannes Hauswedell changed: What|Removed |Added CC||h2+bugs at fsfe dot org --- Comment #2 from Hannes Hauswedell --- Constraints on friend member functions seemed to be stripped entirely, therefore making two functions with only different constraints appear the same: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86978
[Bug c++/68093] [concepts] friend function declarations that differ only by constraints are rejected as redefinitions
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68093 --- Comment #1 from Eric Niebler --- Still happens on trunk, 2 years later: template concept bool True = true; template struct S { friend bool operator==(S, int) requires True { return true; } friend bool operator==(S, int) requires !True { return true; } }; int main() { S s; } :-(