diff options
Diffstat (limited to 'clang/lib/AST/RecordLayoutBuilder.cpp')
| -rw-r--r-- | clang/lib/AST/RecordLayoutBuilder.cpp | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/clang/lib/AST/RecordLayoutBuilder.cpp b/clang/lib/AST/RecordLayoutBuilder.cpp index c4a156fbccf..407655770df 100644 --- a/clang/lib/AST/RecordLayoutBuilder.cpp +++ b/clang/lib/AST/RecordLayoutBuilder.cpp @@ -1261,10 +1261,8 @@ void RecordLayoutBuilder::LayoutFields(const RecordDecl *D) { // Zero-length bitfields following non-bitfield members are // ignored: const FieldDecl *FD = (*Field); - if (FD->isBitField() && LastFD && !LastFD->isBitField() && - FD->getBitWidth()->EvaluateAsInt(Context).getZExtValue() == 0) { + if (Context.ZeroBitfieldFollowsNonBitfield(FD, LastFD)) continue; - } LastFD = FD; } LayoutField(*Field); |

