diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-01-02 15:42:26 -0800 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-01-02 15:42:26 -0800 |
| commit | d6a0308a711a5dbaccef5ef12c153567b099a9d5 (patch) | |
| tree | f3c3a9ccc3a1bde28fc3c696b945eaad7da62eff /include | |
| parent | a90e8317ccd0811407754152072913d2b4e56568 (diff) | |
| parent | 16c5cf92b09183f3f2fde4108bd697880f68bcbc (diff) | |
| download | mruby-d6a0308a711a5dbaccef5ef12c153567b099a9d5.tar.gz mruby-d6a0308a711a5dbaccef5ef12c153567b099a9d5.zip | |
Merge pull request #1633 from cremno/nan-boxing-uintptr_t
NaN boxing: use uintptr_t for bit manipulations
Diffstat (limited to 'include')
| -rw-r--r-- | include/mruby/value.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/mruby/value.h b/include/mruby/value.h index cc0440bbc..611b0e109 100644 --- a/include/mruby/value.h +++ b/include/mruby/value.h @@ -155,7 +155,7 @@ typedef struct mrb_value { #define mrb_tt(o) (((o).value.ttt & 0xfc000)>>14) #define mrb_mktt(tt) (0xfff00000|((tt)<<14)) #define mrb_type(o) ((uint32_t)0xfff00000 < (o).value.ttt ? mrb_tt(o) : MRB_TT_FLOAT) -#define mrb_ptr(o) ((void*)((((intptr_t)0x3fffffffffff)&((intptr_t)((o).value.p)))<<2)) +#define mrb_ptr(o) ((void*)((((uintptr_t)0x3fffffffffff)&((uintptr_t)((o).value.p)))<<2)) #define mrb_float(o) (o).f #define MRB_SET_VALUE(o, tt, attr, v) do {\ @@ -166,7 +166,7 @@ typedef struct mrb_value { case MRB_TT_UNDEF:\ case MRB_TT_FIXNUM:\ case MRB_TT_SYMBOL: (o).attr = (v); break;\ - default: (o).value.i = 0; (o).value.p = (void*)((intptr_t)(o).value.p | (((intptr_t)(v))>>2)); break;\ + default: (o).value.i = 0; (o).value.p = (void*)((uintptr_t)(o).value.p | (((uintptr_t)(v))>>2)); break;\ }\ } while (0) |
