================
@@ -1696,7 +1696,11 @@ static NamedDecl* getLambdaCallOperatorHelper(const 
CXXRecordDecl &RD) {
       RD.getASTContext().DeclarationNames.getCXXOperatorName(OO_Call);
 
   DeclContext::lookup_result Calls = RD.lookup(Name);
-  assert(!Calls.empty() && "Missing lambda call operator!");
+
+  // This can happen while building the lambda.
+  if (Calls.empty())
+    return nullptr;
----------------
erichkeane wrote:

So I'm REALLY concerned about this.  I don't think it is wrong, but just that 
we need to make sure we handle this value correctly.  At least 
`getLambdaStaticInvoker` doesn't handle the `nullptr` correctly (though I guess 
the other two uses DO, so thats fine).

I wouldn't mind a bit of an audit to make sure that uses of 
`getLambdaStaticInvoker` (and perhaps the others, but as they already 
acknowledged they could return null, i'm mildly less concerned) do a reasonable 
thing.

https://github.com/llvm/llvm-project/pull/138121
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to