Lua_remove for Lua 5.3

Where can I get lua_remove for the current lua version?

This is now a macro. It is not a Haiku/Haikuports problem.

Ok, but how i can solve this problem?

I would suggest to use an older compatible Lua version.

Otherwise replace with macro contents:
#define lua_insert(L,idx) lua_rotate(L, (idx), 1)

#define lua_remove(L,idx) (lua_rotate(L, (idx), -1), lua_pop(L, 1))

#define lua_replace(L,idx) (lua_copy(L, -1, (idx)), lua_pop(L, 1))

I am a user, i does not understand you are talking about :frowning:

Really? Just use the required lua version then.

EGSL only gives out that lua_remove is not available. I does not get any other information what version is needed. On my older revision (before i reinstall my haiku) i have ruin lua 5.2 but installing it beside to 5.3 does not take effect. So i ask here in the forum to get more info :-).

Well, EGSL just doesn’t work with lua 5.3. Lua is still evolving and making incompatible changes to their C API, so you must use the correct version of Lua to work with EGSL.

It should be possible to install Lua 5.2 and Lua 5.3 side by side, if that doesn’t work as expected, we should review the packaging for Lua to fix that problem.

Migrating EGSL to Lua 5.3 would be possible, but if you do not understand Korli’s hints with the #define tricks, then you should find someone with more knowledge about the C language to do it.


We found this solution too at last night. Lorglas has updated egsl package. We install beside the current lua vision the version 5.2.