diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | node.h | 4 |
2 files changed, 8 insertions, 2 deletions
@@ -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 @@ -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()) |