[Bug 204786] devel/libcxxrt: crash when mixing different languages with exceptions
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Tue Nov 24 15:56:14 UTC 2015
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=204786
Bug ID: 204786
Summary: devel/libcxxrt: crash when mixing different languages
with exceptions
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: Individual Port(s)
Assignee: freebsd-ports-bugs at FreeBSD.org
Reporter: mejedi at gmail.com
Unwind API was specifically designed to allow mixed language environments where
exceptions from different runtimes interoperate. One particular example is
C++/LuaJit combination. Due to the issues in libcxxrt, databases/tarantool
crashes when linked against libcxxrt.
__cxa_free_exception does the math wrong when converting from
_Unwind_Exception* to __cxx_exception*. _Unwind_Exception instance is actually
enclosed within __cxx_exception structure, the last member. The resulting
pointer is off by -32 bytes. Leads to a crash in _Unwind_DeleteException when
LuaJIT is releasing a C++ exception.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-ports-bugs
mailing list