lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On Wed, 17 Aug 2011 14:38:31 +0200, Mike Pall wrote:

unpack() is not compiled, i.e. the trace is aborted there.

Nice to know.

>  local bit_set_1 = function(_bset,_byte,_bit)
>    _bset[_byte] = bor(bset[_byte],bmask_1[_bit])
>  end

The function as written above certainly doesn't work. You mix
_bset and bset (without underscore).

That's a typo that is not in the original code, sorry.

Even if that's just a typo, there's a high likeliness you're
overflowing a buffer somewhere (e.g. due to mixup of 0-based vs.
1-based indexing).

I have added an explicit assertion in my Lua source to check that,
and it is not triggered.

Try running under the memcheck tool of Valgrind
(see src/Makefile, -DLUAJIT_USE_SYSMALLOC -DLUAJIT_USE_VALGRIND,
CCDEBUG=-g).

Apparently I cannot do that on x86_64?

Also try to enable assertions.

Done, changes nothing.

--
Pierre 'catwell' Chapuis