diff options
author | Bram Moolenaar <Bram@vim.org> | 2016-06-11 22:26:53 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2016-06-11 22:26:53 +0200 |
commit | 06469e979fe524ac6cb8f705ed4221aa267de11d (patch) | |
tree | ce8c06e78fe2b30c603c64a2a093c25094c50565 /src | |
parent | 724f2edf75bf084665b3e2cdfa7ab66ccb1b5c0c (diff) | |
download | vim-git-06469e979fe524ac6cb8f705ed4221aa267de11d.tar.gz |
patch 7.4.1922v7.4.1922
Problem: Ruby 2.4.0 unifies Fixnum and Bignum into Integer.
Solution: Use rb_cInteger. (Weiong Mao)
Diffstat (limited to 'src')
-rw-r--r-- | src/if_ruby.c | 13 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 15 insertions, 0 deletions
diff --git a/src/if_ruby.c b/src/if_ruby.c index 90e814ec1..7e49906b6 100644 --- a/src/if_ruby.c +++ b/src/if_ruby.c @@ -31,6 +31,10 @@ # define RUBYEXTERN extern #endif +# if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 24 + # define USE_RUBY_Integer +#endif + #ifdef DYNAMIC_RUBY /* * This is tricky. In ruby.h there is (inline) function rb_class_of() @@ -39,6 +43,9 @@ */ # define rb_cFalseClass (*dll_rb_cFalseClass) # define rb_cFixnum (*dll_rb_cFixnum) +# if defined(USE_RUBY_Integer) +# define rb_cInteger (*dll_rb_cInteger) +# endif # if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 20 # define rb_cFloat (*dll_rb_cFloat) # endif @@ -318,6 +325,9 @@ static void ruby_vim_init(void); static VALUE (*dll_rb_assoc_new) (VALUE, VALUE); VALUE *dll_rb_cFalseClass; VALUE *dll_rb_cFixnum; +# if defined(USE_RUBY_Integer) +VALUE *dll_rb_cInteger; +# endif # if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 20 VALUE *dll_rb_cFloat; # endif @@ -505,6 +515,9 @@ static struct {"rb_assoc_new", (RUBY_PROC*)&dll_rb_assoc_new}, {"rb_cFalseClass", (RUBY_PROC*)&dll_rb_cFalseClass}, {"rb_cFixnum", (RUBY_PROC*)&dll_rb_cFixnum}, +# if defined(USE_RUBY_Integer) + {"rb_cInteger", (RUBY_PROC*)&dll_rb_cInteger}, +# endif # if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 20 {"rb_cFloat", (RUBY_PROC*)&dll_rb_cFloat}, # endif diff --git a/src/version.c b/src/version.c index 6dc2efb57..39e70e57d 100644 --- a/src/version.c +++ b/src/version.c @@ -754,6 +754,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1922, +/**/ 1921, /**/ 1920, |