From: Craig Topper Date: Sun, 2 Mar 2014 08:34:05 +0000 (+0000) Subject: Add back LLVM_FINAL macro. lld still needs it. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=f432a326c5c99d4562a703ce769cb48ce81f25a6;p=oota-llvm.git Add back LLVM_FINAL macro. lld still needs it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@202619 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Support/Compiler.h b/include/llvm/Support/Compiler.h index 321910c0139..c2545542480 100644 --- a/include/llvm/Support/Compiler.h +++ b/include/llvm/Support/Compiler.h @@ -106,6 +106,16 @@ #define LLVM_DELETED_FUNCTION #endif +/// LLVM_FINAL - Expands to 'final' if the compiler supports it. +/// Use to mark classes or virtual methods as final. +#if __has_feature(cxx_override_control) || \ + (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GNUC_PREREQ(4, 7)) || \ + LLVM_MSC_PREREQ(1700) +#define LLVM_FINAL final +#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) || \