Fixed bug when allocating a ValueStateImpl object in getPersistentState()
using the bump-pointer allocator and a placed new; we accidentally allocated
a ValueStateImpl* instead, causing an overrun when we did a placed new().

llvm-svn: 46793
diff --git a/clang/Analysis/ValueState.cpp b/clang/Analysis/ValueState.cpp
index 418b06e..00b6607 100644
--- a/clang/Analysis/ValueState.cpp
+++ b/clang/Analysis/ValueState.cpp
@@ -227,7 +227,7 @@
   if (ValueStateImpl* I = StateSet.FindNodeOrInsertPos(ID, InsertPos))
     return I;
   
-  ValueStateImpl* I = (ValueStateImpl*) Alloc.Allocate<ValueState>();
+  ValueStateImpl* I = (ValueStateImpl*) Alloc.Allocate<ValueStateImpl>();
   new (I) ValueStateImpl(State);  
   StateSet.InsertNode(I, InsertPos);
   return I;