[libcxx] r347052 - [libcxx] Mention restriction on inline namespaces in LIBCXX_ABI_NAMESPACE docs

Louis Dionne ldionne at apple.com
Fri Nov 16 06:57:48 PST 2018


Author: ldionne
Date: Fri Nov 16 06:57:47 2018
New Revision: 347052

URL: http://llvm.org/viewvc/llvm-project?rev=347052&view=rev
Log:
[libcxx] Mention restriction on inline namespaces in LIBCXX_ABI_NAMESPACE docs

I also kept the original "vague" documentation that saying that users are
responsible for not breaking us. This doesn't mean anything because there's
no way they can actually enforce that unless we restrict ourselves to a
specific naming scheme, but I left the documentation because it acts as a
good warning and gives us more leeway.

Modified:
    libcxx/trunk/docs/BuildingLibcxx.rst

Modified: libcxx/trunk/docs/BuildingLibcxx.rst
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/docs/BuildingLibcxx.rst?rev=347052&r1=347051&r2=347052&view=diff
==============================================================================
--- libcxx/trunk/docs/BuildingLibcxx.rst (original)
+++ libcxx/trunk/docs/BuildingLibcxx.rst Fri Nov 16 06:57:47 2018
@@ -379,7 +379,9 @@ The following options allow building lib
 
   .. warning::
     When providing a custom namespace, it's the users responsibility to ensure the name won't cause
-    conflicts with other names defined by libc++, both now and in the future.
+    conflicts with other names defined by libc++, both now and in the future. In particular, inline
+    namespaces of the form ``__[0-9]+`` are strictly reserved by libc++ and may not be used by users.
+    Doing otherwise could cause conflicts and hinder libc++ ABI evolution.
 
 .. option:: LIBCXX_ABI_DEFINES:STRING
 




More information about the libcxx-commits mailing list