On 18/09/14 18:04, Ben Langmuir wrote:
On Sep 18, 2014, at 3:47 AM, Vassil Vassilev <[email protected]>
wrote:
On 09/17/2014 09:51 PM, Ben Langmuir wrote:
Index: docs/LanguageExtensions.rst
===================================================================
--- docs/LanguageExtensions.rst (revision 217389)
+++ docs/LanguageExtensions.rst (working copy)
@@ -477,6 +477,13 @@
Use ``__has_feature(cxx_rtti)`` to determine if C++ RTTI has been enabled.
For
example, compiling code with ``-fno-rtti`` disables the use of RTTI.
+C++ Modules
+^^^^^^^^
+
+Use ``__has_feature(modules)`` to determine if experimental C++ Modules have
+been enabled. For example, compiling code with ``-fmodules`` enables the use of
+C++ Modules.
+
C++11
-----
Why are we making this specific to C++ modules? Modules are supported in
C/ObjC. And to actually get modules in C++ you also need -fcxx-modules.
Thanks for the comments. lib/Driver/Tools.cpp:3790 says:
// -fmodules enables modules (off by default). However, for C++/Objective-C++,
// users must also pass -fcxx-modules. The latter flag will disappear once the
// modules implementation is solid for C++/Objective-C++ programs as well.
I prefer not to document the -fcxx-modules.
Yep, makes sense.
The attached patch doesn't mention the C++ modules but Modules in general (I
decided to put them into a separate section). Is it any better?
Vassil
Much better - a couple more comments below:
+Modules
+-------
+
+C/ObjC Modules
+^^^^^^^^^^^^^^
Do we really need a sub-heading? If we do need one I suggest “C and
Objective-C Modules”. Otherwise just a heading “Modules” seems sufficient.
Yep good point.
+
+Use ``__has_feature(modules)`` to determine if Modules have been enabled.
+For example, compiling code with ``-fmodules`` enables the use of Modules.
I suggest we put in a link to the modules documentation.
Now should be better. Thanks!
Vassil
Ben
On Sep 17, 2014, at 12:59 AM, Vassil Vassilev <[email protected]>
wrote:
Hi,
I am attaching a patch addressing http://llvm.org/bugs/show_bug.cgi?id=18985
I wasn't sure whether I had to say 'experimental C++ modules'.
Vassil
<Bug18985.diff>_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
<Bug18985_1.diff>
--
--------------------------------------------
Q: Why is this email five sentences or less?
A: http://five.sentenc.es
Index: docs/LanguageExtensions.rst
===================================================================
--- docs/LanguageExtensions.rst (revision 217432)
+++ docs/LanguageExtensions.rst (working copy)
@@ -849,6 +849,14 @@
Use ``__has_feature(c_thread_local)`` or ``__has_extension(c_thread_local)``
to determine if support for ``_Thread_local`` variables is enabled.
+Modules
+-------
+
+Use ``__has_feature(modules)`` to determine if Modules have been enabled.
+For example, compiling code with ``-fmodules`` enables the use of Modules.
+
+More information could be found `here <http://clang.llvm.org/docs/Modules.html>`_
+
Checks for Type Trait Primitives
================================
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits