Fix TrackingVH to handle const Value subclasses.
[oota-llvm.git] / include / llvm / Support / ValueHandle.h
index 130a620ab2fa2a80f3fc1ec9e60580f6da14861f..c0cdc35e99bfae5a541f8f8a2180c36ce321a914 100644 (file)
@@ -315,7 +315,7 @@ class TrackingVH : public ValueHandleBase {
 
 public:
   TrackingVH() : ValueHandleBase(Tracking) {}
-  TrackingVH(ValueTy *P) : ValueHandleBase(Tracking, P) {}
+  TrackingVH(ValueTy *P) : ValueHandleBase(Tracking, GetAsValue(P)) {}
   TrackingVH(const TrackingVH &RHS) : ValueHandleBase(Tracking, RHS) {}
 
   operator ValueTy*() const {