win: fix ObjectWrap for latest v8
authorScott Blomquist <sblom@microsoft.com>
Tue, 29 Oct 2013 18:43:31 +0000 (11:43 -0700)
committerTrevor Norris <trev.norris@gmail.com>
Tue, 29 Oct 2013 21:53:03 +0000 (14:53 -0700)
We need to keep ObjectWrap around for module authors (we think), but
v8 3.21 broke node_object_wrap.h with respect to MSVC. Coincidentally,
we no longer use ObjectWrap at all in core, and native modules might
as well use their own entirely internal implementation if they need it.

src/node_object_wrap.h

index 538af35..d387a26 100644 (file)
 #ifndef SRC_NODE_OBJECT_WRAP_H_
 #define SRC_NODE_OBJECT_WRAP_H_
 
-#include "node.h"
 #include "v8.h"
 #include <assert.h>
 
-// Explicitly instantiate some template classes, so we're sure they will be
-// present in the binary / shared object. There isn't much doubt that they will
-// be, but MSVC tends to complain about these things.
-#ifdef _MSC_VER
-  template class NODE_EXTERN v8::Persistent<v8::Object>;
-  template class NODE_EXTERN v8::Persistent<v8::FunctionTemplate>;
-#endif
-
 
 namespace node {
 
-class NODE_EXTERN ObjectWrap {
+class ObjectWrap {
  public:
   ObjectWrap() {
     refs_ = 0;