[clang] [Clang][Sema] Don't delay the access check when computing implicit deletion (PR #210254)

Younan Zhang via cfe-commits cfe-commits at lists.llvm.org
Wed Jul 22 04:23:04 PDT 2026


================
@@ -1612,6 +1613,16 @@ bool Sema::isMemberAccessibleForDeletion(CXXRecordDecl *NamingClass,
   // Suppress diagnostics.
   Entity.setDiag(Diag);
 
+  // Deletion checking can run while we are inside an enclosing
+  // delayed-diagnostics scope (e.g. when parsing a later declaration whose
+  // initializer requires explaining why a defaulted comparison operator is
+  // deleted). CheckAccess would then return AR_delayed, but the result must be
+  // known immediately here. Force an undelayed check, mirroring CheckEnableIf.
----------------
zyn0217 wrote:

```suggestion
  // We don't want to delay access checking even we are inside an enclosing
  // delayed-diagnostics scope (e.g. when parsing a later declaration whose
  // initializer requires explaining why a defaulted comparison operator is
  // deleted)
```

https://github.com/llvm/llvm-project/pull/210254


More information about the cfe-commits mailing list