> Can you explain why these other modules cannot work with
> LUA_COMPAT_ALL enabled? Are they providing their own duplicate
> versions of Lua's functions and you get linker errors?
>
> Also, can you explain line 25 here?
> https://github.com/diegonehab/luasocket/blob/unstable/src/luasocket.h
>

That true luasocket seems to need LUA_COMPAT_ALL

This is the explanation for Lua Lanes:

Lua 5.2 introduced a hash randomizer seed which causes table iteration to 
yield a different key order on different VMs even when the tables are 
populated the exact same way. When Lua is built with compatibility options 
(such as LUA_COMPAT_ALL), this causes several base libraries to register 
functions under multiple names. This, with the randomizer, can cause the 
first encountered name of a function to be different on different VMs, which 
breaks function transfer. This means that Lua 5.2 must be built WITHOUT 
compatibility options to be able to use Lanes. Even under Lua 5.1, this may 
cause trouble (even if this would be much less frequent). Unfortunately, we 
get bitten by string.gfind/string.gmatch when Lua 5.1 is built with 
LUA_COMPAT_GFIND (which is the case of LuaBinaries), so for the time being, 
Lanes fails only for Lua 5.2 as the randomizer is the real show breaker 
here.

For me Lanes is the most essential module in Lua.

Victor Bombi



------------------------------------------------------------------------------
Minimize network downtime and maximize team effectiveness.
Reduce network management and security costs.Learn how to hire 
the most talented Cisco Certified professionals. Visit the 
Employer Resources Portal
http://www.cisco.com/web/learning/employer_resources/index.html
_______________________________________________
wxlua-users mailing list
wxlua-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wxlua-users

Reply via email to