Index: src/handles-inl.h |
diff --git a/src/handles-inl.h b/src/handles-inl.h |
index b31351256edfe7711bd574147bbc03b9c6a8f3d3..eca2b877a629ddf7308a9695523369622dcc56bb 100644 |
--- a/src/handles-inl.h |
+++ b/src/handles-inl.h |
@@ -36,14 +36,14 @@ |
namespace v8 { |
namespace internal { |
-template<class T> |
+template<typename T> |
Handle<T>::Handle(T* obj) { |
ASSERT(!obj->IsFailure()); |
location_ = HandleScope::CreateHandle(obj); |
} |
-template <class T> |
+template <typename T> |
inline T* Handle<T>::operator*() const { |
ASSERT(location_ != NULL); |
ASSERT(reinterpret_cast<Address>(*location_) != kHandleZapValue); |
@@ -51,6 +51,15 @@ inline T* Handle<T>::operator*() const { |
} |
+template <typename T> |
+RootVar<T>::RootVar(T* value) : location_(HandleScope::CreateHandle(value)) { } |
+ |
+ |
+template <typename T> |
+RootVar<T>::RootVar(Handle<T> value) |
+ : location_(HandleScope::CreateHandle(*value)) { } |
+ |
+ |
#ifdef DEBUG |
inline NoHandleAllocation::NoHandleAllocation() { |
v8::ImplementationUtilities::HandleScopeData* current = |