[clang] Add an off-by-default warning to complain about MSVC bitfield padding (PR #117428)

via cfe-commits cfe-commits at lists.llvm.org
Tue Nov 26 11:12:42 PST 2024


================
@@ -19213,6 +19213,29 @@ void Sema::ActOnFields(Scope *S, SourceLocation RecLoc, Decl *EnclosingDecl,
 
     if (Record && FD->getType().isVolatileQualified())
       Record->setHasVolatileMember(true);
+    auto IsNonDependentBitField = [](const FieldDecl *FD) {
+      if (!FD->isBitField())
+        return false;
+      if (FD->getType()->isDependentType())
+        return false;
+      return true;
----------------
Sirraide wrote:

Honestly, I’d even do this:
```c++
auto IsNonDependentBitField = [](const FieldDecl *FD) {
  return FD->isBitField() && !FD->getType()->isDependentType();
};
```
(I would have loved to format that as suggestion, but github isn’t letting me because this is in a reply...)

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


More information about the cfe-commits mailing list