components/vim/patches/if_ruby_c.patch
author Ivo Raisr <ivo.raisr@oracle.com>
Wed, 12 Oct 2016 00:33:37 -0700
branchs11u3-sru
changeset 7127 0d23504d93cf
parent 3857 5e5034b03491
permissions -rw-r--r--
PSARC/2016/221 PC/SC Lite smartcard middleware 24657567 pcsclite needs to deliver 32-bit libraries
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3857
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
     1
# Apply ruby 2.0 fix to ruby 1.9 as well.  Needed to allow
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
     2
# vim to build with ruby 1.9.
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
     3
# Includes changes from vim v7.4 plus a patch
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
     4
# applied upstream to vim 7.4.224.  See
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
     5
# https://groups.google.com/forum/#!msg/vim_dev/r8wzUVNYIfQ/m0DM8Wt97vkJ
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
     6
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
     7
--- src/if_ruby.c	Tue Jul 10 13:28:45 2012
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
     8
+++ src/if_ruby.c	Fri Feb 20 19:55:21 2015
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
     9
@@ -85,6 +85,14 @@
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    10
 # define rb_int2big rb_int2big_stub
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    11
 #endif
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    12
 
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    13
+#if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 19 \
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    14
+    && SIZEOF_INT < SIZEOF_LONG
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    15
+/* Ruby 1.9 defines a number of static functions which use rb_fix2int and
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    16
+ * rb_num2int if SIZEOF_INT < SIZEOF_LONG (64bit) */
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    17
+# define rb_fix2int rb_fix2int_stub
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    18
+# define rb_num2int rb_num2int_stub
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    19
+#endif
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    20
+
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    21
 #include <ruby.h>
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    22
 #ifdef RUBY19_OR_LATER
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    23
 # include <ruby/encoding.h>
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    24
@@ -178,6 +186,13 @@
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    25
 #define rb_hash_new			dll_rb_hash_new
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    26
 #define rb_inspect			dll_rb_inspect
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    27
 #define rb_int2inum			dll_rb_int2inum
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    28
+# if SIZEOF_INT < SIZEOF_LONG /* 64 bits only */
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    29
+# if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER <= 18
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    30
+#  define rb_fix2int		dll_rb_fix2int
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    31
+#  define rb_num2int		dll_rb_num2int
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    32
+# endif
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    33
+#  define rb_num2uint		dll_rb_num2uint
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    34
+# endif
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    35
 #define rb_lastline_get			dll_rb_lastline_get
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    36
 #define rb_lastline_set			dll_rb_lastline_set
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    37
 #define rb_load_protect			dll_rb_load_protect
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    38
@@ -269,6 +284,11 @@
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    39
 static VALUE (*dll_rb_inspect) (VALUE);
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    40
 static VALUE (*dll_rb_int2inum) (long);
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    41
 static VALUE (*dll_rb_int2inum) (long);
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    42
+# if SIZEOF_INT < SIZEOF_LONG /* 64 bits only */
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    43
+static long (*dll_rb_fix2int) (VALUE);
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    44
+static long (*dll_rb_num2int) (VALUE);
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    45
+static unsigned long (*dll_rb_num2uint) (VALUE);
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    46
+# endif
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    47
 static VALUE (*dll_rb_lastline_get) (void);
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    48
 static void (*dll_rb_lastline_set) (VALUE);
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    49
 static void (*dll_rb_load_protect) (VALUE, int, int*);
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    50
@@ -336,7 +356,17 @@
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    51
     return dll_rb_int2big(x);
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    52
 }
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    53
 #endif
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    54
-
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    55
+#  if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 19 \
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    56
+    && SIZEOF_INT < SIZEOF_LONG
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    57
+long rb_fix2int_stub(VALUE x)
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    58
+{
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    59
+    return dll_rb_fix2int(x);
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    60
+}
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    61
+long rb_num2int_stub(VALUE x)
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    62
+{
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    63
+    return dll_rb_num2int(x);
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    64
+}
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    65
+#  endif
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    66
 static HINSTANCE hinstRuby = NULL; /* Instance of ruby.dll */
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    67
 
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    68
 /*
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    69
@@ -377,6 +407,11 @@
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    70
     {"rb_hash_new", (RUBY_PROC*)&dll_rb_hash_new},
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    71
     {"rb_inspect", (RUBY_PROC*)&dll_rb_inspect},
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    72
     {"rb_int2inum", (RUBY_PROC*)&dll_rb_int2inum},
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    73
+# if SIZEOF_INT < SIZEOF_LONG /* 64 bits only */
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    74
+    {"rb_fix2int", (RUBY_PROC*)&dll_rb_fix2int},
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    75
+    {"rb_num2int", (RUBY_PROC*)&dll_rb_num2int},
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    76
+    {"rb_num2uint", (RUBY_PROC*)&dll_rb_num2uint},
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    77
+# endif
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    78
     {"rb_lastline_get", (RUBY_PROC*)&dll_rb_lastline_get},
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    79
     {"rb_lastline_set", (RUBY_PROC*)&dll_rb_lastline_set},
5e5034b03491 17409417 change vim to use ruby 1.9.3 instead of ruby 1.8.7
April Chin <april.chin@oracle.com>
parents:
diff changeset
    80
     {"rb_load_protect", (RUBY_PROC*)&dll_rb_load_protect},