MSVC 2010 build fix
authorAlp Toker <alp@nuanti.com>
Fri, 3 Jan 2014 07:58:20 +0000 (07:58 +0000)
committerAlp Toker <alp@nuanti.com>
Fri, 3 Jan 2014 07:58:20 +0000 (07:58 +0000)
Back out the part of r198399 that enabled LLVM_FINAL/LLVM_OVERRIDE on VS 2010.

DwarfUnit.h legitimately uses them on destructors which unfortunately triggers
Compiler Error C3665 (override specifier not allowed on a destructor/finalizer)
prior to MSVC 2012:

  virtual ~DwarfCompileUnit() LLVM_OVERRIDE;

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

include/llvm/Support/Compiler.h

index 413260f23263dbfb4e24fb25413282eb2831ee84..d4f55e1a1b275d8ded36c2dcc586c6430eac5c8d 100644 (file)
 #if __has_feature(cxx_override_control) || \
     defined(__GXX_EXPERIMENTAL_CXX0X__) || LLVM_MSC_PREREQ(1700)
 #define LLVM_FINAL final
-#elif LLVM_MSC_PREREQ(1600)
-#define LLVM_FINAL sealed
 #else
 #define LLVM_FINAL
 #endif
 /// LLVM_OVERRIDE - Expands to 'override' if the compiler supports it.
 /// Use to mark virtual methods as overriding a base class method.
 #if __has_feature(cxx_override_control) || \
-    defined(__GXX_EXPERIMENTAL_CXX0X__) || LLVM_MSC_PREREQ(1600)
+    defined(__GXX_EXPERIMENTAL_CXX0X__) || LLVM_MSC_PREREQ(1700)
 #define LLVM_OVERRIDE override
 #else
 #define LLVM_OVERRIDE