Wednesday, May 31, 2017

Re: clang luajit unwinding

On Wed, May 31, 2017 at 01:59:28PM -0400, Ted Unangst wrote:
> a little late to the party, but luajit is broken with clang because it needs
> special libunwind support or something. that's the story so far.
>
> anyway, looking closer at luajit I notice that "external" unwinding is only
> the default on amd64. i386 and others use internal unwinding. one can also
> disable unwinding by defining LJ_NO_UNWIND.
>
> anyway, that's what I did, and things seem to work fine. there's a long
> comment in src/lj_err.c that lays out the pros and cons of each approach,
> mostly less c++ compat. i personally don't much care, and if it only works on
> one architecture, I'd say it's questionable to rely on this feature.
>
> maybe we can live without unwind in luajit?

Libobjc2 is also broken for the exact same reason, and that kills gnustep.

FreeBSD doesn't have any patches for libobjc nor luajit, so I guess they
probably have unwinder support in base.

I'm going to do a temp build with LJ_NO_UNWIND anyway, just so that I can
see further fallout.

Some of the ports that require luajit also do heavy C++, so I think there's
no real way around it.

No comments:

Post a Comment