[libcxx-commits] [PATCH] D73584: [libunwind] Rename __personality_routine to _Unwind_Personality_Fn

Markus Böck via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Thu Feb 6 13:29:18 PST 2020


zero9178 added a comment.

In D73584#1862110 <https://reviews.llvm.org/D73584#1862110>, @steven_wu wrote:

> I hope we are not renaming everything because it add complexity on compatibility.
>
> Rename only the refs from libunwind is not enough since there are refs from clang header and libc++abi as well. unwind.h and corresponding header from clang are both shipping products which add compatibility problem.


Git grepping for __ personality_routine after the patch yields only three results. One is the typedef inside of the clang Headers, Two are inside of tests of llvm that I am not sure are relevant here. libc++abi uses the name _Unwind_Personality_Fn instead of __personality_routine that libunwind has used prior to this patch. _Unwind_Personality_Fn is also what GCC calls it. So this patch actually makes it possible to compile libc++abi with libunwind (Build errors only show up on windows since only windows has actually used _Unwind_Personality_Fn ).

Regarding compatibility I am not sure, but I thought users are expected to include unwind.h from clang Headers anyways.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73584/new/

https://reviews.llvm.org/D73584





More information about the libcxx-commits mailing list