r218614 - Update modules documentation now that C++ support is working pretty well.

Richard Smith richard at metafoo.co.uk
Tue Sep 30 11:33:06 PDT 2014


I think we'll be ready to do this for Clang 3.6. I don't have strong
feelings about whether we should do this now or wait until we've had more
time for testing and bug fixes, though.

On Tue, Sep 30, 2014 at 1:16 AM, Vassil Vassilev <
vasil.georgiev.vasilev at cern.ch> wrote:

> 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
>> cfe-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140930/956941de/attachment.html>


More information about the cfe-commits mailing list