diff options
author | Bram Moolenaar <Bram@vim.org> | 2013-04-14 16:19:03 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2013-04-14 16:19:03 +0200 |
commit | 0bcdd6e70932cf689a6a49f514d7b893468b492d (patch) | |
tree | 1ca8f7028c915bb1683330c28591ff16200bc727 /src/if_ruby.c | |
parent | 0187ca0bdf0d7e5afc5ea80b390dc7e1fc983829 (diff) | |
download | vim-git-0bcdd6e70932cf689a6a49f514d7b893468b492d.tar.gz |
updated for version 7.3.889v7.3.889
Problem: Can't build with Ruby 2.0 on a 64 bit system.
Solution: Define rb_fix2int and rb_num2int. (Kohei Suzuki)
Diffstat (limited to 'src/if_ruby.c')
-rw-r--r-- | src/if_ruby.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/if_ruby.c b/src/if_ruby.c index d810d3770..514295850 100644 --- a/src/if_ruby.c +++ b/src/if_ruby.c @@ -88,6 +88,14 @@ # define rb_int2big rb_int2big_stub #endif +#if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 20 \ + && SIZEOF_INT < SIZEOF_LONG +/* Ruby 2.0 defines a number of static functions which use rb_fix2int and + * rb_num2int if SIZEOF_INT < SIZEOF_LONG (64bit) */ +# define rb_fix2int rb_fix2int_stub +# define rb_num2int rb_num2int_stub +#endif + #include <ruby.h> #ifdef RUBY19_OR_LATER # include <ruby/encoding.h> @@ -352,6 +360,17 @@ VALUE rb_int2big_stub(SIGNED_VALUE x) { return dll_rb_int2big(x); } +#if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 20 \ + && SIZEOF_INT < SIZEOF_LONG +long rb_fix2int_stub(VALUE x) +{ + return dll_rb_fix2int(x); +} +long rb_num2int_stub(VALUE x) +{ + return dll_rb_num2int(x); +} +#endif #if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 20 VALUE rb_float_new_in_heap(double d) |