EHABI defines the exception class as char[8] instead of uint64_t [1].
For ABI compatibility the ABI the definition needs to be updated.
Details
Details
- Reviewers
manojgupta MaskRay ldionne mclow.lists - Group Reviewers
Restricted Project Restricted Project - Commits
- rGf5b997e6b706: [Unwind] Harmonise exception class for EHABI spec.
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
Thanks Daniel. We still have a problem with pthread_cancel but this resolves the immediate crash.
libunwind/src/UnwindLevel1-gcc-ext.c | ||
---|---|---|
112 | We're seeing a -Wincompatible-pointer-types warning here (which we treat as an error) in Chromium: ../../buildtools/third_party/libunwind/trunk/src/UnwindLevel1-gcc-ext.c:112:10: error: incompatible pointer types passing '_Unwind_Exception_Class *' (aka 'uint8_t (*)[8]') to parameter of type 'char *' [-Werror,-Wincompatible-pointer-types] strcpy(&ex.exception_class, "CLNGUNW"); ^~~~~~~~~~~~~~~~~~~ I see in libunwind/test/forceunwind.pass.cpp you're casting the pointer to char*, maybe that's needed here too? |
libunwind/src/UnwindLevel1-gcc-ext.c | ||
---|---|---|
112 | https://reviews.llvm.org/D109168 fixes it for me locally. |
We're seeing a -Wincompatible-pointer-types warning here (which we treat as an error) in Chromium:
I see in libunwind/test/forceunwind.pass.cpp you're casting the pointer to char*, maybe that's needed here too?