File tree Expand file tree Collapse file tree 1 file changed +13
-3
lines changed Expand file tree Collapse file tree 1 file changed +13
-3
lines changed Original file line number Diff line number Diff line change @@ -74,10 +74,20 @@ RUBY_SYMBOL_EXPORT_END
74
74
#define NODE_LSHIFT (NODE_TYPESHIFT+7)
75
75
#define NODE_LMASK (((SIGNED_VALUE)1<<(sizeof(VALUE)*CHAR_BIT-NODE_LSHIFT))-1)
76
76
77
- #define nd_line (n ) (int)((n) ? ((SIGNED_VALUE)(n)->flags)>>NODE_LSHIFT : -1)
78
- #define nd_set_line (n ,l ) \
79
- (n)->flags=(((n)->flags&~((VALUE)(-1)<<NODE_LSHIFT))|((VALUE)((l)&NODE_LMASK)<<NODE_LSHIFT))
77
+ static inline int
78
+ nd_line (const NODE * n )
79
+ {
80
+ if (!n ) return -1 ;
81
+ SIGNED_VALUE flags = (SIGNED_VALUE )n -> flags ;
82
+ return (int )(flags >> NODE_LSHIFT );
83
+ }
80
84
85
+ static inline void
86
+ nd_set_line (NODE * n , SIGNED_VALUE l )
87
+ {
88
+ n -> flags &= ~(~(VALUE )0 << NODE_LSHIFT );
89
+ n -> flags |= ((VALUE )(l & NODE_LMASK ) << NODE_LSHIFT );
90
+ }
81
91
82
92
#define NODE_SPECIAL_REQUIRED_KEYWORD ((NODE *)-1)
83
93
#define NODE_REQUIRED_KEYWORD_P (node ) ((node) == NODE_SPECIAL_REQUIRED_KEYWORD)
You can’t perform that action at this time.
0 commit comments