Patch 8.1.0183
Problem: Lua API changed, breaking the build.
Solution: Adjust prototype of lua_rawgeti(). (Ken Takata,
closes #3157, closes #3144)
Files: src/if_lua.c
*** ../vim-8.1.0182/src/if_lua.c Fri Jul 13 22:08:19 2018
--- src/if_lua.c Sat Jul 14 20:48:49 2018
***************
*** 253,266 ****
--- 253,275 ----
void (*dll_lua_pushboolean) (lua_State *L, int b);
void (*dll_lua_pushlightuserdata) (lua_State *L, void *p);
void (*dll_lua_getfield) (lua_State *L, int idx, const char *k);
+ #if LUA_VERSION_NUM <= 502
void (*dll_lua_rawget) (lua_State *L, int idx);
void (*dll_lua_rawgeti) (lua_State *L, int idx, int n);
+ #else
+ int (*dll_lua_rawget) (lua_State *L, int idx);
+ int (*dll_lua_rawgeti) (lua_State *L, int idx, lua_Integer n);
+ #endif
void (*dll_lua_createtable) (lua_State *L, int narr, int nrec);
void *(*dll_lua_newuserdata) (lua_State *L, size_t sz);
int (*dll_lua_getmetatable) (lua_State *L, int objindex);
void (*dll_lua_setfield) (lua_State *L, int idx, const char *k);
void (*dll_lua_rawset) (lua_State *L, int idx);
+ #if LUA_VERSION_NUM <= 502
void (*dll_lua_rawseti) (lua_State *L, int idx, int n);
+ #else
+ void (*dll_lua_rawseti) (lua_State *L, int idx, lua_Integer n);
+ #endif
int (*dll_lua_setmetatable) (lua_State *L, int objindex);
int (*dll_lua_next) (lua_State *L, int idx);
/* libs */
***************
*** 962,968 ****
return 0;
if (*key == NUL)
luaL_error(L, "empty key");
! if (!lua_isnil(L, 3)) { /* read value? */
luaV_checktypval(L, 3, &v, "setting dict item");
if (d->dv_scope == VAR_DEF_SCOPE && v.v_type == VAR_FUNC)
luaL_error(L, "cannot assign funcref to builtin scope");
--- 971,978 ----
return 0;
if (*key == NUL)
luaL_error(L, "empty key");
! if (!lua_isnil(L, 3)) /* read value? */
! {
luaV_checktypval(L, 3, &v, "setting dict item");
if (d->dv_scope == VAR_DEF_SCOPE && v.v_type == VAR_FUNC)
luaL_error(L, "cannot assign funcref to builtin scope");
***************
*** 1074,1080 ****
status = FAIL;
else
{
! for (i = 0; i < n; i++) {
luaV_checktypval(L, i + 2, &v, "calling funcref");
list_append_tv(f->args.vval.v_list, &v);
}
--- 1084,1091 ----
status = FAIL;
else
{
! for (i = 0; i < n; i++)
! {
luaV_checktypval(L, i + 2, &v, "calling funcref");
list_append_tv(f->args.vval.v_list, &v);
}
***************
*** 1531,1543 ****
else
{
luaV_newlist(L, l);
! if (initarg) { /* traverse table to init dict */
int notnil, i = 0;
typval_T v;
! do {
lua_rawgeti(L, 1, ++i);
notnil = !lua_isnil(L, -1);
! if (notnil) {
luaV_checktypval(L, -1, &v, "vim.list");
list_append_tv(l, &v);
}
--- 1542,1557 ----
else
{
luaV_newlist(L, l);
! if (initarg) /* traverse table to init list */
! {
int notnil, i = 0;
typval_T v;
! do
! {
lua_rawgeti(L, 1, ++i);
notnil = !lua_isnil(L, -1);
! if (notnil)
! {
luaV_checktypval(L, -1, &v, "vim.list");
list_append_tv(l, &v);
}
*** ../vim-8.1.0182/src/version.c Sat Jul 14 19:30:32 2018
--- src/version.c Sat Jul 14 20:49:07 2018
***************
*** 791,792 ****
--- 791,794 ----
{ /* Add new patch number below this line */
+ /**/
+ 183,
/**/
--
Hear about the guy who played a blank tape at full blast?
The mime next door went nuts.
/// 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 ///
--
--
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.