[libcxx-commits] [PATCH] D152378: [libc++][filesystem] Use _LIBCPP_HIDE_FROM_ABI in common headers
Nikolas Klauser via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Wed Jun 7 13:25:58 PDT 2023
philnik added a comment.
In D152378#4404050 <https://reviews.llvm.org/D152378#4404050>, @ldionne wrote:
> Actually I just thought about this and if users are linking against static `libc++.a`, then they could potentially end up with symbols with the same name from different versions of libc++, which would be an ODR violation. In other words, we do need the same precautions in our own built library as we have in our headers due to static archives. So I believe `_LIBCPP_HIDE_FROM_ABI` is necessary if we drop the anonymous namespace. Do you agree?
How would users end up with multiple versions of a function? All the functions are exclusively in `libc++.a`, and linking against multiple versions or that will definitely blow up.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D152378/new/
https://reviews.llvm.org/D152378
More information about the libcxx-commits
mailing list