To: vim_dev@googlegroups.com Subject: Patch 8.1.0646 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.1.0646 Problem: Cannot build with Ruby 2.6.0. Solution: Add rb_ary_detransient(). (Ozaki Kiichi, closes #3724) Files: src/if_ruby.c *** ../vim-8.1.0645/src/if_ruby.c 2018-12-19 20:48:43.344066228 +0100 --- src/if_ruby.c 2018-12-27 22:08:13.730597860 +0100 *************** *** 123,128 **** --- 123,132 ---- # define rb_gc_writebarrier_unprotect rb_gc_writebarrier_unprotect_stub #endif + #if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 26 + # define rb_ary_detransient (*dll_rb_ary_detransient) + #endif + #include #ifdef RUBY19_OR_LATER # include *************** *** 455,460 **** --- 459,467 ---- static VALUE (*dll_rb_ary_new) (void); static VALUE (*dll_rb_ary_new4) (long n, const VALUE *elts); static VALUE (*dll_rb_ary_push) (VALUE, VALUE); + # if DYNAMIC_RUBY_VER >= 26 + static void (*dll_rb_ary_detransient) (VALUE); + # endif # if defined(RUBY19_OR_LATER) || defined(RUBY_INIT_STACK) # ifdef __ia64 static void * (*dll_rb_ia64_bsp) (void); *************** *** 666,671 **** --- 673,681 ---- {"rb_ary_new4", (RUBY_PROC*)&dll_rb_ary_new4}, # endif {"rb_ary_push", (RUBY_PROC*)&dll_rb_ary_push}, + # if DYNAMIC_RUBY_VER >= 26 + {"rb_ary_detransient", (RUBY_PROC*)&dll_rb_ary_detransient}, + # endif # endif # ifdef RUBY19_OR_LATER {"rb_int2big", (RUBY_PROC*)&dll_rb_int2big}, *************** *** 966,977 **** static void error_print(int state) { ! #ifndef DYNAMIC_RUBY ! #if !(defined(RUBY_VERSION) && RUBY_VERSION >= 19) \ ! && !(defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 19) RUBYEXTERN VALUE ruby_errinfo; #endif - #endif VALUE error; VALUE eclass; VALUE einfo; --- 976,984 ---- static void error_print(int state) { ! #if !defined(DYNAMIC_RUBY) && !defined(RUBY19_OR_LATER) RUBYEXTERN VALUE ruby_errinfo; #endif VALUE error; VALUE eclass; VALUE einfo; *** ../vim-8.1.0645/src/version.c 2018-12-27 21:26:56.426251398 +0100 --- src/version.c 2018-12-27 22:09:50.109859974 +0100 *************** *** 801,802 **** --- 801,804 ---- { /* Add new patch number below this line */ + /**/ + 646, /**/ -- Time is money. Especially if you make clocks. /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ an exciting new programming language -- http://www.Zimbu.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///