[MC] Switch static const to an enum to silence MSVC linker warnings
authorDavid Majnemer <david.majnemer@gmail.com>
Fri, 10 Jul 2015 21:50:04 +0000 (21:50 +0000)
committerDavid Majnemer <david.majnemer@gmail.com>
Fri, 10 Jul 2015 21:50:04 +0000 (21:50 +0000)
Integral class statics are handled oddly in MSVC, we don't need them in
this case, use an enum instead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@241945 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/MC/MCSymbol.h
lib/MC/MCSymbol.cpp

index 17e6b857cf2029711af33b6aa0940e3880c5baf5..b2910dfccd637abc15622fa3d736f5a252360100 100644 (file)
@@ -114,12 +114,12 @@ protected:
   /// The alignment is stored as log2(align) + 1.  This allows all values from
   /// 0 to 2^31 to be stored which is every power of 2 representable by an
   /// unsigned.
-  static const unsigned NumCommonAlignmentBits = 5;
+  enum : unsigned { NumCommonAlignmentBits = 5 };
   unsigned CommonAlignLog2 : NumCommonAlignmentBits;
 
   /// The Flags field is used by object file implementations to store
   /// additional per symbol information which is not easily classified.
-  static const unsigned NumFlagsBits = 16;
+  enum : unsigned { NumFlagsBits = 16 };
   mutable uint32_t Flags : NumFlagsBits;
 
   /// Index field, for use by the object file implementation.
index affc57471fdb956b614eeecd2dce0545c32b6a3d..125380a9d14066aea4508f4a35d8f37b9366512e 100644 (file)
@@ -19,9 +19,6 @@ using namespace llvm;
 // Sentinel value for the absolute pseudo section.
 MCSection *MCSymbol::AbsolutePseudoSection = reinterpret_cast<MCSection *>(1);
 
-const unsigned MCSymbol::NumCommonAlignmentBits;
-const unsigned MCSymbol::NumFlagsBits;
-
 void *MCSymbol::operator new(size_t s, const StringMapEntry<bool> *Name,
                              MCContext &Ctx) {
   // We may need more space for a Name to account for alignment.  So allocate