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. 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
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
Index: docs/LanguageExtensions.rst
===================================================================
--- docs/LanguageExtensions.rst (revision 217432)
+++ docs/LanguageExtensions.rst (working copy)
@@ -849,6 +849,15 @@
Use ``__has_feature(c_thread_local)`` or ``__has_extension(c_thread_local)``
to determine if support for ``_Thread_local`` variables is enabled.
+Modules
+-------
+
+C/ObjC Modules
+^^^^^^^^^^^^^^
+
+Use ``__has_feature(modules)`` to determine if Modules have been enabled.
+For example, compiling code with ``-fmodules`` enables the use of Modules.
+
Checks for Type Trait Primitives
================================
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits