[libcxx-commits] [PATCH] D129968: [libc++] Add a bunch of missing _LIBCPP_HIDE_FROM_ABI
Nikolas Klauser via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Aug 9 07:36:08 PDT 2022
philnik added a comment.
In D129968#3709765 <https://reviews.llvm.org/D129968#3709765>, @jloser wrote:
> This is an interesting change - I like the systematic way of finding all the functions missing the hidden visibility markup. Nice job!
>
> In the future, I'd love if we didn't have to write the markup at all for hidden visibility and instead have that be the default visibility at namespace scope in `libc++`. This inverts the current behavior and would mean we would mark up the functions we want to be exported in the dynamic libs which are far fewer than the ones we want to hide. That's a bigger change and can be addressed after this if desired. It's something @ldionne and I spoke about briefly a while back.
I think that's planned, but it's a bit more complicated, since `_LIBCPP_HIDE_FROM_ABI` also adds `__attribute__((__abi_tag__("<libc++ version>")))`. We'd need an `inline namespace <libc++ version> _LIBCPP_HIDDEN {}` or something like that. That would also remove the `always_inline` when using GCC.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D129968/new/
https://reviews.llvm.org/D129968
More information about the libcxx-commits
mailing list