[libc++] Re-apply the use of ABI tags to provide per-TU insulation
This commit re-applies 9ee97ce3b830, which was reverted by 61d417ce
because it broke the LLDB data formatter tests. It also re-applies
6148c79a (the manual GN change associated to it).
Differential Revision: https://reviews.llvm.org/D127444
NOKEYCHECK=True
GitOrigin-RevId: d2e86866be0f17295c5f677333c2a9952e259dd7
diff --git a/docs/ReleaseNotes.rst b/docs/ReleaseNotes.rst
index c2917d4..c6eb835 100644
--- a/docs/ReleaseNotes.rst
+++ b/docs/ReleaseNotes.rst
@@ -224,3 +224,8 @@
means that the same set of installed headers works for both DLL and static
linkage. This means that distributors finally can build both library
versions with a single CMake invocation.
+
+- The ``LIBCXX_HIDE_FROM_ABI_PER_TU_BY_DEFAULT`` configuration option has been removed. Indeed,
+ the risk of ODR violations from mixing different versions of libc++ in the same program has
+ been mitigated with a different technique that is simpler and does not have the drawbacks of
+ using internal linkage.