1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
To: vim_dev@googlegroups.com
Subject: Patch 8.1.0646
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
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 <ruby.h>
#ifdef RUBY19_OR_LATER
# include <ruby/encoding.h>
***************
*** 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 ///
|