在 2015年6月26日星期五 UTC+8上午12:28:05,Bram Moolenaar写道:
> Patch 7.4.759
> Problem: Building with Lua 5.3 doesn't work, symbols have changed.
> Solution: Use the new names for the new version. (Felix Schnizlein)
> Files: src/if_lua.c
>
>
> *** ../vim-7.4.758/src/if_lua.c 2015-02-17 16:28:51.365508352 +0100
> --- src/if_lua.c 2015-06-25 18:24:28.026834336 +0200
> ***************
> *** 111,117 ****
> --- 111,122 ----
> #define lua_tointeger dll_lua_tointeger
> #define lua_call dll_lua_call
> #define lua_pcall dll_lua_pcall
> +
> + #elif LUA_VERSION_NUM <= 502
> + #define lua_replace dll_lua_replace
> + #define lua_remove dll_lua_remove
> #else
> + #define lua_rotate dll_lua_rotate
> #define lua_tonumberx dll_lua_tonumberx
> #define lua_tointegerx dll_lua_tointegerx
> #define lua_callk dll_lua_callk
> ***************
> *** 124,131 ****
> #define lua_gettop dll_lua_gettop
> #define lua_settop dll_lua_settop
> #define lua_pushvalue dll_lua_pushvalue
> ! #define lua_replace dll_lua_replace
> ! #define lua_remove dll_lua_remove
> #define lua_isnumber dll_lua_isnumber
> #define lua_isstring dll_lua_isstring
> #define lua_type dll_lua_type
> --- 129,135 ----
> #define lua_gettop dll_lua_gettop
> #define lua_settop dll_lua_settop
> #define lua_pushvalue dll_lua_pushvalue
> ! #define lua_copy dll_lua_copy
> #define lua_isnumber dll_lua_isnumber
> #define lua_isstring dll_lua_isstring
> #define lua_type dll_lua_type
> ***************
> *** 195,201 ****
> --- 199,210 ----
> lua_Integer (*dll_lua_tointeger) (lua_State *L, int idx);
> void (*dll_lua_call) (lua_State *L, int nargs, int nresults);
> int (*dll_lua_pcall) (lua_State *L, int nargs, int nresults, int errfunc);
> + #elif LUA_VERSION_NUM <= 502
> + void (*dll_lua_replace) (lua_State *L, int idx);
> + void (*dll_lua_remove) (lua_State *L, int idx);
> #else
> +
> + void (*dll_lua_rotate) (lua_State *L, int idx, int n);
> lua_Number (*dll_lua_tonumberx) (lua_State *L, int idx, int *isnum);
> lua_Integer (*dll_lua_tointegerx) (lua_State *L, int idx, int *isnum);
> void (*dll_lua_callk) (lua_State *L, int nargs, int nresults, int ctx,
> ***************
> *** 204,217 ****
> int ctx, lua_CFunction k);
> void (*dll_lua_getglobal) (lua_State *L, const char *var);
> void (*dll_lua_setglobal) (lua_State *L, const char *var);
> #endif
> const char *(*dll_lua_typename) (lua_State *L, int tp);
> void (*dll_lua_close) (lua_State *L);
> int (*dll_lua_gettop) (lua_State *L);
> void (*dll_lua_settop) (lua_State *L, int idx);
> void (*dll_lua_pushvalue) (lua_State *L, int idx);
> - void (*dll_lua_replace) (lua_State *L, int idx);
> - void (*dll_lua_remove) (lua_State *L, int idx);
> int (*dll_lua_isnumber) (lua_State *L, int idx);
> int (*dll_lua_isstring) (lua_State *L, int idx);
> int (*dll_lua_type) (lua_State *L, int idx);
> --- 213,225 ----
> int ctx, lua_CFunction k);
> void (*dll_lua_getglobal) (lua_State *L, const char *var);
> void (*dll_lua_setglobal) (lua_State *L, const char *var);
> + void (*dll_lua_copy) (lua_State *L, int fromidx, int toidx);
> #endif
> const char *(*dll_lua_typename) (lua_State *L, int tp);
> void (*dll_lua_close) (lua_State *L);
> int (*dll_lua_gettop) (lua_State *L);
> void (*dll_lua_settop) (lua_State *L, int idx);
> void (*dll_lua_pushvalue) (lua_State *L, int idx);
> int (*dll_lua_isnumber) (lua_State *L, int idx);
> int (*dll_lua_isstring) (lua_State *L, int idx);
> int (*dll_lua_type) (lua_State *L, int idx);
> ***************
> *** 288,294 ****
> --- 296,307 ----
> {"lua_tointeger", (luaV_function) &dll_lua_tointeger},
> {"lua_call", (luaV_function) &dll_lua_call},
> {"lua_pcall", (luaV_function) &dll_lua_pcall},
> + #elif LUA_VERSION_NUM <= 502
> + {"lua_replace", (luaV_function) &dll_lua_replace},
> + {"lua_remove", (luaV_function) &dll_lua_remove},
> #else
> + {"lua_rotate", (luaV_function) &dll_lua_rotate},
> + {"lua_copy", (luaV_function) &dll_lua_copy},
> {"lua_tonumberx", (luaV_function) &dll_lua_tonumberx},
> {"lua_tointegerx", (luaV_function) &dll_lua_tointegerx},
> {"lua_callk", (luaV_function) &dll_lua_callk},
> ***************
> *** 301,308 ****
> {"lua_gettop", (luaV_function) &dll_lua_gettop},
> {"lua_settop", (luaV_function) &dll_lua_settop},
> {"lua_pushvalue", (luaV_function) &dll_lua_pushvalue},
> - {"lua_replace", (luaV_function) &dll_lua_replace},
> - {"lua_remove", (luaV_function) &dll_lua_remove},
> {"lua_isnumber", (luaV_function) &dll_lua_isnumber},
> {"lua_isstring", (luaV_function) &dll_lua_isstring},
> {"lua_type", (luaV_function) &dll_lua_type},
> --- 314,319 ----
> *** ../vim-7.4.758/src/version.c 2015-06-25 18:20:30.437271806 +0200
> --- src/version.c 2015-06-25 18:25:17.978321826 +0200
> ***************
> *** 743,744 ****
> --- 743,746 ----
> { /* Add new patch number below this line */
> + /**/
> + 759,
> /**/
>
> --
> hundred-and-one symptoms of being an internet addict:
> 150. You find yourself counting emoticons to get to sleep.
>
> /// Bram Moolenaar -- [email protected] -- 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 ///
with this change, I got the following build errors with LUA 5.23
if_lua.obj : error LNK2019: unresolved external symbol _lua_tonumberx
referenced in function _luaV_totypval
if_lua.obj : error LNK2019: unresolved external symbol _lua_tointegerx
referenced in function _luaV_buffer_index
if_lua.obj : error LNK2019: unresolved external symbol _lua_callk referenced in
function _luaV_print
if_lua.obj : error LNK2019: unresolved external symbol _lua_getglobal
referenced in function _luaV_print
if_lua.obj : error LNK2019: unresolved external symbol _lua_pcallk referenced
in function _luaV_debug
if_lua.obj : error LNK2019: unresolved external symbol _lua_setglobal
referenced in function _luaopen_vim
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.