[PATCH] D103855: [clang] Exclude function pointers on DefaultedComparisonAnalyzer

2021-06-18 Thread Lang Hames via Phabricator via cfe-commits
lhames added a comment. Disregard 80f30a6b855b : I messed up a copy-paste of a commit message. That was for https://reviews.llvm.org/D104480. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews

[PATCH] D103855: [clang] Exclude function pointers on DefaultedComparisonAnalyzer

2021-06-18 Thread Matheus Izvekov via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG7ddd15cd5dea: [clang] Exclude function pointers on DefaultedComparisonAnalyzer (authored by mizvekov). Repository: rG LLVM Github Monorepo CHANGE

[PATCH] D103855: [clang] Exclude function pointers on DefaultedComparisonAnalyzer

2021-06-18 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov updated this revision to Diff 352957. mizvekov added a comment. rebase. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D103855/new/ https://reviews.llvm.org/D103855 Files: clang/include/clang/Basic/DiagnosticSemaKinds.td clang/lib/Sema/

[PATCH] D103855: [clang] Exclude function pointers on DefaultedComparisonAnalyzer

2021-06-17 Thread Richard Smith - zygoloid via Phabricator via cfe-commits
rsmith accepted this revision. rsmith added a comment. This revision is now accepted and ready to land. Thanks, let's go with this for now. Discussion in WG21 seems to be heading towards removing the builtin candidates for `operator<=>`, `operator<`, `operator<=`, `operator>`, and `operator>=` f

[PATCH] D103855: [clang] Exclude function pointers on DefaultedComparisonAnalyzer

2021-06-17 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov updated this revision to Diff 352667. mizvekov added a comment. Instead of excluding function pointers from the overload set, just implicitly delete with new diagnostic in case we end up selecting it. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.ll

[PATCH] D103855: [clang] Exclude function pointers on DefaultedComparisonAnalyzer

2021-06-16 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov added a comment. I see. I can change this patch so it just implicitly deletes the operator in case we decide to pick function pointers, without the hard error introduced by the previous patch. And if the comitee decides to stop providing relational operators for function pointers, we c

[PATCH] D103855: [clang] Exclude function pointers on DefaultedComparisonAnalyzer

2021-06-16 Thread Richard Smith - zygoloid via Phabricator via cfe-commits
rsmith added a comment. I think we need to take this to the C++ committee. For example, consider a case like: struct A { using T1 = void(*)(); using T2 = int; operator T1(); operator T2(); }; struct B { A a; friend auto operator<=>(B, B) = default; }; Under the s

[PATCH] D103855: [clang] Exclude function pointers on DefaultedComparisonAnalyzer

2021-06-07 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov created this revision. Herald added subscribers: manas, steakhal, ASDenysPetrov, dkrupp, donat.nagy, Szelethus, a.sidorin, baloghadamsoftware. mizvekov requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. This implements a more compreh