From 4ea1a1185a9062d544211688008253bd4814bef0 Mon Sep 17 00:00:00 2001 From: Chris Bieneman Date: Fri, 19 Sep 2014 20:29:02 +0000 Subject: [PATCH] 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 --- lib/Bitcode/Reader/BitcodeReader.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) 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; } //===----------------------------------------------------------------------===// -- 2.34.1