diff --git a/src/core/ngx_atomic.h b/src/core/ngx_atomic.h
index b24a997..b6bd17f 100644
--- a/src/core/ngx_atomic.h
+++ b/src/core/ngx_atomic.h
@@ -6,6 +6,7 @@
 #include <ngx_core.h>
 
 
+/* STUB */
 #define ngx_atomic_inc(x)   x++;
 #define ngx_atomic_dec(x)   x--;
 
diff --git a/src/core/ngx_log.h b/src/core/ngx_log.h
index c3771d7..9919fa8 100644
--- a/src/core/ngx_log.h
+++ b/src/core/ngx_log.h
@@ -199,6 +199,14 @@
 #endif
 
 #if (NGX_DEBUG)
+#define ngx_log_debug3(level, log, err, fmt, arg1, arg2, arg3) \
+    if (log->log_level & level) \
+        ngx_log_error_core(NGX_LOG_DEBUG, log, err, fmt, arg1, arg2, arg3)
+#else
+#define ngx_log_debug3(level, log, err, fmt, arg1, arg2, arg3)
+#endif
+
+#if (NGX_DEBUG)
 #define ngx_log_debug6(level, log, err, fmt, \
                        arg1, arg2, arg3, arg4, arg5, arg6) \
     if (log->log_level & level) \
@@ -237,6 +245,14 @@
 #endif
 
 #if (NGX_DEBUG)
+#define ngx_log_debug3(level, log, err, fmt, arg1, arg2, arg3) \
+    if (log->log_level & level) \
+        ngx_log_debug_core(log, err, fmt, arg1, arg2, arg3)
+#else
+#define ngx_log_debug3(level, log, err, fmt, arg1, arg2, arg3)
+#endif
+
+#if (NGX_DEBUG)
 #define ngx_log_debug6(level, log, err, fmt, \
                        arg1, arg2, arg3, arg4, arg5, arg6) \
     if (log->log_level & level) \
diff --git a/src/core/ngx_rbtree.c b/src/core/ngx_rbtree.c
index dc60551..683920b 100644
--- a/src/core/ngx_rbtree.c
+++ b/src/core/ngx_rbtree.c
@@ -123,7 +123,7 @@
 void ngx_rbtree_delete(ngx_rbtree_t **root, ngx_rbtree_t *sentinel,
                        ngx_rbtree_t *node)
 {
-    ngx_int_t      red;
+    ngx_int_t      is_red;
     ngx_rbtree_t  *subst, *temp, *w;
 
     /* a binary tree delete */
@@ -152,7 +152,7 @@
         return;
     }
 
-    red = ngx_rbt_is_red(subst);
+    is_red = ngx_rbt_is_red(subst);
 
     if (subst == subst->parent->left) {
         subst->parent->left = temp;
@@ -199,7 +199,7 @@
         }
     }
 
-    if (red) {
+    if (is_red) {
         return;
     }
 
@@ -246,7 +246,7 @@
                 w = temp->parent->left;
             }
 
-            if (ngx_rbt_is_black(w->right) && ngx_rbt_is_black(w->left)) {
+            if (ngx_rbt_is_black(w->left) && ngx_rbt_is_black(w->right)) {
                 ngx_rbt_red(w);
                 temp = temp->parent;
 
