Apply --no-deprecation to C++ warnings as well
authorisaacs <i@izs.me>
Thu, 21 Jun 2012 19:20:23 +0000 (12:20 -0700)
committerisaacs <i@izs.me>
Thu, 21 Jun 2012 19:29:33 +0000 (12:29 -0700)
src/ev-emul.h
src/node.cc
src/node_internals.h
src/node_io_watcher.cc

index 4355b4e..404e779 100644 (file)
@@ -88,7 +88,7 @@ extern "C" {
 
 #define __uv_warn_of(old_, new_)                                              \
   do {                                                                        \
-    if (__uv_warn_##old_) break;                                              \
+    if (__uv_warn_##old_ || no_deprecation) break;                            \
     __uv_warn_##old_ = 1;                                                     \
     fputs("WARNING: " #old_ " is deprecated, use " #new_ "\n", stderr);       \
   }                                                                           \
index 94cc2a5..e0a0c72 100644 (file)
@@ -120,7 +120,6 @@ static Persistent<String> disposed_symbol;
 
 static bool print_eval = false;
 static bool force_repl = false;
-static bool no_deprecation = false;
 static bool trace_deprecation = false;
 static char *eval_string = NULL;
 static int option_end_index = 0;
@@ -129,6 +128,9 @@ static bool debug_wait_connect = false;
 static int debug_port=5858;
 static int max_stack_size = 0;
 
+// used by C++ modules as well
+bool no_deprecation = false;
+
 static uv_check_t check_tick_watcher;
 static uv_prepare_t prepare_tick_watcher;
 static uv_idle_t tick_spinner;
index 80aa4e5..3f9eec2 100644 (file)
@@ -28,6 +28,8 @@
 
 namespace node {
 
+extern bool no_deprecation;
+
 #ifdef _WIN32
 // emulate snprintf() on windows, _snprintf() doesn't zero-terminate the buffer
 // on overflow...
index 8812944..f238d60 100644 (file)
@@ -80,12 +80,14 @@ void IOWatcher::Callback(EV_P_ ev_io *w, int revents) {
 //  io.start();
 //
 Handle<Value> IOWatcher::New(const Arguments& args) {
-  fprintf(stderr, "WARNING: don't use IOWatcher, it'll be removed in v0.9\n");
-
   if (!args.IsConstructCall()) {
     return FromConstructorTemplate(constructor_template, args);
   }
 
+  if (!no_deprecation) {
+    fprintf(stderr, "WARNING: don't use IOWatcher, it'll be removed in v0.9\n");
+  }
+
   HandleScope scope;
   IOWatcher *s = new IOWatcher();
   s->Wrap(args.This());