[AST] Move the enum in ObjCMethodDeclBitfields

Move the enum { ObjCMethodFamilyBitWidth = 4 } to the top of
the class. For some dark reason having the enum between the
bitfields breaks the packing with gcc version 7.3-win32 20180312.

Reported by: Abramo Bagnara (by email)

llvm-svn: 339017
This commit is contained in:
Bruno Ricci 2018-08-06 14:33:45 +00:00
parent 58529c3f57
commit 8d53476614
1 changed files with 3 additions and 2 deletions

View File

@ -1554,8 +1554,6 @@ class DeclContext {
/// methods in ObjCMethodDecl should be updated appropriately.
class ObjCMethodDeclBitfields {
friend class ObjCMethodDecl;
/// For the bits in DeclContextBitfields.
uint64_t : NumDeclContextBits;
/// This is needed for the bitwidth of Family below but
/// is defined in Basic/IdentifierTable.h which we do not include.
@ -1564,6 +1562,9 @@ class DeclContext {
/// that these two ObjCMethodFamilyBitWidth are equal.
enum { ObjCMethodFamilyBitWidth = 4 };
/// For the bits in DeclContextBitfields.
uint64_t : NumDeclContextBits;
/// The conventional meaning of this method; an ObjCMethodFamily.
/// This is not serialized; instead, it is computed on demand and
/// cached.