[libcxx] Make the visibility attributes consistent for __narrow_to_utf8/__widen_from_utf8
authorMartin Storsjö <martin@martin.st>
Tue, 18 May 2021 14:45:08 +0000 (14:45 +0000)
committerMartin Storsjö <martin@martin.st>
Tue, 25 May 2021 19:57:16 +0000 (22:57 +0300)
commit3a6be27978aa3e83e9dc2ff2402b2569ce0686fd
tree407c2f5e10c270b5c889c4c332d905866712c4fb
parenta2a65a5bae3c503d40c219ef9ba460b1fb34d1bf
[libcxx] Make the visibility attributes consistent for __narrow_to_utf8/__widen_from_utf8

Use the same visiblity attributes as for all other template
specializations in the same file; declare the specialization itself
using _LIBCPP_TYPE_VIS, and don't use _LIBCPP_EXPORTED_FROM_ABI on
the destructor. Methods that are excluded from the ABI are marked
with _LIBCPP_INLINE_VISIBILITY.

This makes the vtable exported from DLL builds of libc++. Practically,
it doesn't make any difference for the CI configuration, but it
can make a difference in mingw setups.

Differential Revision: https://reviews.llvm.org/D102717
libcxx/include/__locale