[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: `require()` semantics?
- From: Pierre-Yves Gérardy <pygy79@...>
- Date: Wed, 25 Jun 2014 02:59:28 +0200
I think I've found a bug in the C loader/seracher of Lua 5.1:
With the current version of require51 found at
https://gist.github.com/pygy/7d7d0209767a2d1c593a/f10fdaff5f391b0a6ccfde0a6d52408582176051,
if the sentinel is a table, it ends up being populated by the C loader
as if it were the module.
For eample, requiring lpeg twice triggers the cycle detection code. If
the sentinel has another type, the error does not occur.
However it is nowhere passed as a parameter to anything... I suppose
it is left on the stack and coopted by the loader.
—Pierre-Yves