From 34ac90c024cbed8110389decc4144a9385f9bcb9 Mon Sep 17 00:00:00 2001 From: David Blaikie Date: Thu, 17 Apr 2014 20:30:35 +0000 Subject: [PATCH] ManagedStatic is never built with a null constructor, remove support for it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@206492 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Support/ManagedStatic.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/Support/ManagedStatic.cpp b/lib/Support/ManagedStatic.cpp index acd5b1a7018..6a1c2a545a8 100644 --- a/lib/Support/ManagedStatic.cpp +++ b/lib/Support/ManagedStatic.cpp @@ -21,11 +21,12 @@ static const ManagedStaticBase *StaticList = nullptr; void ManagedStaticBase::RegisterManagedStatic(void *(*Creator)(), void (*Deleter)(void*)) const { + assert(Creator); if (llvm_is_multithreaded()) { llvm_acquire_global_lock(); if (!Ptr) { - void* tmp = Creator ? Creator() : nullptr; + void* tmp = Creator(); TsanHappensBefore(this); sys::MemoryFence(); @@ -47,7 +48,7 @@ void ManagedStaticBase::RegisterManagedStatic(void *(*Creator)(), } else { assert(!Ptr && !DeleterFn && !Next && "Partially initialized ManagedStatic!?"); - Ptr = Creator ? Creator() : nullptr; + Ptr = Creator(); DeleterFn = Deleter; // Add to list of managed statics. -- 2.34.1