From: Chris Bieneman Date: Fri, 19 Sep 2014 20:29:02 +0000 (+0000) Subject: Eliminating static destructor for the BitCodeErrorCategory by converting to a Managed... X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=4ea1a1185a9062d544211688008253bd4814bef0;p=oota-llvm.git Eliminating static destructor for the BitCodeErrorCategory by converting to a ManagedStatic. Summary: This is part of the overall goal of removing static initializers from LLVM. Reviewers: chandlerc Reviewed By: chandlerc Subscribers: chandlerc, llvm-commits Differential Revision: http://reviews.llvm.org/D5416 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218149 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Bitcode/Reader/BitcodeReader.cpp b/lib/Bitcode/Reader/BitcodeReader.cpp index 84ee0b4b3a6..80afb56e746 100644 --- a/lib/Bitcode/Reader/BitcodeReader.cpp +++ b/lib/Bitcode/Reader/BitcodeReader.cpp @@ -25,6 +25,8 @@ #include "llvm/Support/MathExtras.h" #include "llvm/Support/MemoryBuffer.h" #include "llvm/Support/raw_ostream.h" +#include "llvm/Support/ManagedStatic.h" + using namespace llvm; enum { @@ -3502,9 +3504,10 @@ class BitcodeErrorCategoryType : public std::error_category { }; } +static ManagedStatic ErrorCategory; + const std::error_category &llvm::BitcodeErrorCategory() { - static BitcodeErrorCategoryType O; - return O; + return *ErrorCategory; } //===----------------------------------------------------------------------===//