[PATCH] D133659: [Clang] P1169R4: static operator()
Aaron Ballman via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Sep 29 10:28:04 PDT 2022
aaron.ballman added a comment.
Double-checking my understanding of the overload resolution changes: we added a new conversion sequence, but we don't expect that conversion sequence to cause a change in overload resolution in practice? (I'm wondering if there's test coverage we should be adding for those changes.)
================
Comment at: clang/lib/Parse/ParseExprCXX.cpp:1265
+ if (Intro.hasLambdaCapture())
+ P.Diag(StaticLoc, diag::err_static_lambda_captures);
+}
----------------
aaron.ballman wrote:
> royjacobson wrote:
> > cor3ntin wrote:
> > > We might want to add a note showing where the capture list is.
> > I added a note, but the captures list is always just before the static specifier, so I'm not sure how useful it is. WDYT?
> >
> FWIW, I'm not sure the note adds a whole lot of value. @cor3ntin, do you have a code example in mind where you think the note would be clarifying?
I think we should remove the note here -- we can add a note back when we run into a use case where it would be enlightening.
================
Comment at: clang/lib/Sema/SemaOverload.cpp:7027-7029
+ ImplicitConversionSequence ICS;
+ ICS.setStaticObjectArgument();
+ Candidate.Conversions[FirstConvIdx] = ICS;
----------------
Can you replace this with: `Candidate.Conversions[FirstConvIdx].setStaticObjectArgument();` and get the same behavior?
================
Comment at: clang/test/Lexer/cxx-features.cpp:42-48
+#if check(if_consteval, 0, 0, 0, 0, 0, 202106)
+#error "wrong value for __cpp_if_consteval"
+#endif
+
+#if check(multidimensional_subscript, 0, 0, 0, 0, 0, 202110)
+#error "wrong value for __cpp_multidimensional_subscript"
+#endif
----------------
Unrelated changes? (Feel free to land as an NFC change separately though, they look like sensible changes.)
================
Comment at: clang/test/SemaCXX/lambda-unevaluated.cpp:125
+
+#if __cplusplus > 202002L
+namespace StaticLambdas {
----------------
We can remove this now, right?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D133659/new/
https://reviews.llvm.org/D133659
More information about the cfe-commits
mailing list