================
@@ -873,30 +873,17 @@ class Sema final : public SemaBase {
/// Warn when implicitly casting 0 to nullptr.
void diagnoseZeroToNullptrConversion(CastKind Kind, const Expr *E);
- // ----- function effects ---
+ /// All functions/lambdas/blocks which have bodies and which have a non-empty
+ /// FunctionEffectsRef to be verified.
+ SmallVector<const Decl *> DeclsWithEffectsToVerify;
+ /// The union of all effects present on DeclsWithEffectsToVerify. Conditions
+ /// are all null.
+ FunctionEffectSet AllEffectsToVerify;
----------------
dougsonos wrote:
Well, the large codebases I've adapted care deeply about `nonblocking` and do
not use `nonallocating`. Those two are very closely related, however, so I
think your point stands.
There is some set logic which I would have to revisit -- there's a need to
know, for every visited function, which effects are being explicitly verified
vs. which effects are being checked for inferability...
https://github.com/llvm/llvm-project/pull/99656
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits