summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--node.h4
2 files changed, 8 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 660e1ab672..81f3149367 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Sun May 17 18:59:45 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * node.h (nd_line): NODE_LMASK is not needed.
+
+ * node.h (NOEX_SAFE): made int.
+
Sun May 17 14:23:08 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (rb_parse_in_eval): returns true in true eval, not in
diff --git a/node.h b/node.h
index c6a0fbbcff..58edbd4669 100644
--- a/node.h
+++ b/node.h
@@ -280,7 +280,7 @@ typedef struct RNode {
#define NODE_LSHIFT (NODE_TYPESHIFT+7)
#define NODE_LMASK (((SIGNED_VALUE)1<<(sizeof(VALUE)*CHAR_BIT-NODE_LSHIFT))-1)
-#define nd_line(n) ((VALUE)(((RNODE(n))->flags>>NODE_LSHIFT)&NODE_LMASK))
+#define nd_line(n) (RNODE(n)->flags>>NODE_LSHIFT)
#define nd_set_line(n,l) \
RNODE(n)->flags=((RNODE(n)->flags&~(-1<<NODE_LSHIFT))|(((l)&NODE_LMASK)<<NODE_LSHIFT))
@@ -473,7 +473,7 @@ typedef struct RNode {
#define NOEX_SUPER 0x20
#define NOEX_VCALL 0x40
-#define NOEX_SAFE(n) (((n) >> 8) & 0x0F)
+#define NOEX_SAFE(n) ((int)((n) >> 8) & 0x0F)
#define NOEX_WITH(n, s) ((s << 8) | (n) | (ruby_running ? 0 : NOEX_BASIC))
#define NOEX_WITH_SAFE(n) NOEX_WITH(n, rb_safe_level())