InternalError when adding > 32768 callables
qwenger opened this issue · 0 comments
qwenger commented
import quickjs
c = quickjs.Context()
fcts = [c.add_callable(f"a{i}", lambda x: x) for i in range(32769)]
print(c.eval(f"a{len(fcts) - 2}(1)")) # passes
print(c.eval(f"a{len(fcts) - 1}(2)")) # InternalError
- Despite the
JS_NewCFunctionMagic
function accepting anint magic
, only the range ofint16_t
is valid, see upstream bug report: https://www.freelists.org/post/quickjs-devel/int-magic - Once that bug is fixed, raise a proper error message if outside the allowed range.