I've got it fixed, I replaced all instances of Handle::New with Local::New 
(it appears that Handle isn't a friend class to HandleScope, but Local is). 
The other issue I had which may or may not be related to this one, was the 
change that made Persistent handles non-copyable, I created a wrapper class 
for Persistent which held a pointer to a Persistent handle to fix this 
issue.

Cheers.

On Tuesday, January 21, 2014 11:53:51 PM UTC-4, Chris Adams wrote:
>
> The samples (shell, etc) compile fine
>
> However after upgrading my project from a version of v8 from June '13 I'm 
> left with this error which I can't resolve:
>
> 1>c:\program files (x86)\microsoft visual studio 
> 10.0\vc\include\v8.h(5544): error C2248: 'v8::HandleScope::CreateHandle' : 
> cannot access protected member declared in class 'v8::HandleScope'
> 1>          c:\program files (x86)\microsoft visual studio 
> 10.0\vc\include\v8.h(837) : see declaration of 
> 'v8::HandleScope::CreateHandle'
> 1>          c:\program files (x86)\microsoft visual studio 
> 10.0\vc\include\v8.h(817) : see declaration of 'v8::HandleScope'
> 1>          c:\program files (x86)\microsoft visual studio 
> 10.0\vc\include\v8.h(5539) : while compiling class template member function 
> 'v8::Handle<T> v8::Handle<T>::New(v8::Isolate *,T *)'
> 1>          with
> 1>          [
> 1>              T=v8::String
> 1>          ]
> 1>          c:\program files (x86)\microsoft visual studio 
> 10.0\vc\include\v8.h(1023) : see reference to class template instantiation 
> 'v8::Handle<T>' being compiled
> 1>          with
> 1>          [
> 1>              T=v8::String
> 1>          ]
> 1>c:\program files (x86)\microsoft visual studio 
> 10.0\vc\include\v8.h(5544): error C2248: 'v8::HandleScope::CreateHandle' : 
> cannot access protected member declared in class 'v8::HandleScope'
> 1>          c:\program files (x86)\microsoft visual studio 
> 10.0\vc\include\v8.h(837) : see declaration of 
> 'v8::HandleScope::CreateHandle'
> 1>          c:\program files (x86)\microsoft visual studio 
> 10.0\vc\include\v8.h(817) : see declaration of 'v8::HandleScope'
> 1>          c:\program files (x86)\microsoft visual studio 
> 10.0\vc\include\v8.h(5539) : while compiling class template member function 
> 'v8::Handle<T> v8::Handle<T>::New(v8::Isolate *,T *)'
> 1>          with
> 1>          [
> 1>              T=v8::Object
> 1>          ]
> 1>          Engine\RELScripting.cpp(291) : see reference to class template 
> instantiation 'v8::Handle<T>' being compiled
> 1>          with
> 1>          [
> 1>              T=v8::Object
> 1>          ]
>
> Line 291 in RELScripting.cpp is:
>
> v8::Handle<v8::Object> obj;= 
> v8::Handle<v8::Object>::New(v8::Isolate::GetCurrent(), mi->second);
>
> However the error referenced is always the first case where I use 
> v8::Handle::New in the file, mi->second is of type 
> v8::Persistent<v8::Object>
>
> Any help would be greatly appreciated, I find any similar issues already 
> discussed.
>

-- 
-- 
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users
--- 
You received this message because you are subscribed to the Google Groups 
"v8-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to