That is pretty cool! Does this mean we could merge fcxx-modules into
fmodules flags?
Vassil
On 09/29/2014 07:46 PM, Richard Smith wrote:
Author: rsmith
Date: Mon Sep 29 12:46:41 2014
New Revision: 218614
URL: http://llvm.org/viewvc/llvm-project?rev=218614&view=rev
Log:
Update modules documentation now that C++ support is working pretty well.
Modified:
cfe/trunk/docs/Modules.rst
Modified: cfe/trunk/docs/Modules.rst
URL:
http://llvm.org/viewvc/llvm-project/cfe/trunk/docs/Modules.rst?rev=218614&r1=218613&r2=218614&view=diff
==============================================================================
--- cfe/trunk/docs/Modules.rst (original)
+++ cfe/trunk/docs/Modules.rst Mon Sep 29 12:46:41 2014
@@ -114,7 +114,7 @@ Objective-C provides syntax for importin
@import std;
-The @import declaration above imports the entire contents of the ``std`` module (which would contain, e.g., the entire C or C++ standard library) and make its API available within the current translation unit. To import only part of a module, one may use dot syntax to specific a particular submodule, e.g.,
+The ``@import`` declaration above imports the entire contents of the ``std``
module (which would contain, e.g., the entire C or C++ standard library) and
make its API available within the current translation unit. To import only part
of a module, one may use dot syntax to specific a particular submodule, e.g.,
.. parsed-literal::
@@ -166,7 +166,7 @@ Command-line parameters
Enable the modules feature (EXPERIMENTAL).
``-fcxx-modules``
- Enable the modules feature for C++ (EXPERIMENTAL and VERY BROKEN).
+ Enable the modules feature for C++ (EXPERIMENTAL).
``-fmodule-maps``
Enable interpretation of module maps (EXPERIMENTAL). This option is implied
by ``-fmodules``.
@@ -832,14 +832,11 @@ Modules is an experimental feature, and
Unlike with ``#include`` directives, it should be fairly simple to track
whether a directly-imported module has ever been used. By doing so, Clang can
emit ``unused import`` or ``unused #include`` diagnostics, including Fix-Its to
remove the useless imports/includes.
**Fix-Its for missing imports**
- It's fairly common for one to make use of some API while writing code, only to get a compiler
error about "unknown type" or "no function named" because the corresponding
header has not been included. Clang should detect such cases and auto-import the required module
(with a Fix-It!).
+ It's fairly common for one to make use of some API while writing code, only to get a compiler
error about "unknown type" or "no function named" because the corresponding
header has not been included. Clang can detect such cases and auto-import the required module, but
should provide a Fix-It to add the import.
**Improve modularize**
The modularize tool is both extremely important (for deployment) and
extremely crude. It needs better UI, better detection of problems (especially
for C++), and perhaps an assistant mode to help write module maps for you.
-**C++ Support**
- Modules clearly has to work for C++, or we'll never get to use it for the
Clang code base.
-
Where To Learn More About Modules
=================================
The Clang source code provides additional information about modules:
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits