Opaque types didn't work if llvm_is_multithreaded().

AlwaysOpaqueTy is always NULL at this point, and it causes an assertion failure.
Fix it by using the just constructed tmp instead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80780 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Torok Edwin 2009-09-02 12:23:05 +00:00
parent f11e88337f
commit 254bb831d8

View File

@ -492,7 +492,7 @@ void DerivedType::dropAllTypeUses() {
tmp = AlwaysOpaqueTy;
if (!tmp) {
tmp = OpaqueType::get(getContext());
PATypeHolder* tmp2 = new PATypeHolder(AlwaysOpaqueTy);
PATypeHolder* tmp2 = new PATypeHolder(tmp);
sys::MemoryFence();
AlwaysOpaqueTy = tmp;
Holder = tmp2;