<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">Thanks!<br>
Vassil<br>
On 10/01/2014 01:21 AM, Richard Smith wrote:<br>
</div>
<blockquote
cite="mid:CAOfiQq=14FiggwTwSf4sAQespr4Nua2qasJVw8yuKoDumstT=A@mail.gmail.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<div dir="ltr">After requests on IRC, it seems people prefer to
make -fmodules turn on C++ modules now rather than waiting until
closer to 3.6; that's done in r218717.<br>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Tue, Sep 30, 2014 at 11:33 AM,
Richard Smith <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:richard@metafoo.co.uk" target="_blank">richard@metafoo.co.uk</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div dir="ltr">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.
<div>
<div class="h5">
<div><br>
<div class="gmail_extra">
<div class="gmail_quote">On Tue, Sep 30, 2014 at
1:16 AM, Vassil Vassilev <span dir="ltr"><<a
moz-do-not-send="true"
href="mailto:vasil.georgiev.vasilev@cern.ch"
target="_blank">vasil.georgiev.vasilev@cern.ch</a>></span>
wrote:<br>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">That
is pretty cool! Does this mean we could
merge fcxx-modules into fmodules flags?<span><font
color="#888888"><br>
Vassil</font></span>
<div>
<div><br>
On 09/29/2014 07:46 PM, Richard Smith
wrote:<br>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Author:
rsmith<br>
Date: Mon Sep 29 12:46:41 2014<br>
New Revision: 218614<br>
<br>
URL: <a moz-do-not-send="true"
href="http://llvm.org/viewvc/llvm-project?rev=218614&view=rev"
target="_blank">http://llvm.org/viewvc/llvm-project?rev=218614&view=rev</a><br>
Log:<br>
Update modules documentation now that
C++ support is working pretty well.<br>
<br>
Modified:<br>
cfe/trunk/docs/Modules.rst<br>
<br>
Modified: cfe/trunk/docs/Modules.rst<br>
URL: <a moz-do-not-send="true"
href="http://llvm.org/viewvc/llvm-project/cfe/trunk/docs/Modules.rst?rev=218614&r1=218613&r2=218614&view=diff"
target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/docs/Modules.rst?rev=218614&r1=218613&r2=218614&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/docs/Modules.rst
(original)<br>
+++ cfe/trunk/docs/Modules.rst Mon Sep
29 12:46:41 2014<br>
@@ -114,7 +114,7 @@ Objective-C
provides syntax for importin<br>
@import std;<br>
-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.,<br>
+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.,<br>
.. parsed-literal::<br>
@@ -166,7 +166,7 @@ Command-line
parameters<br>
Enable the modules feature
(EXPERIMENTAL).<br>
``-fcxx-modules``<br>
- Enable the modules feature for C++
(EXPERIMENTAL and VERY BROKEN).<br>
+ Enable the modules feature for C++
(EXPERIMENTAL).<br>
``-fmodule-maps``<br>
Enable interpretation of module
maps (EXPERIMENTAL). This option is
implied by ``-fmodules``.<br>
@@ -832,14 +832,11 @@ Modules is an
experimental feature, and<br>
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.<br>
**Fix-Its for missing imports**<br>
- 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!).<br>
+ 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.<br>
**Improve modularize**<br>
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.<br>
-**C++ Support**<br>
- Modules clearly has to work for
C++, or we'll never get to use it for
the Clang code base.<br>
-<br>
Where To Learn More About Modules<br>
=================================<br>
The Clang source code provides
additional information about modules:<br>
<br>
<br>
_______________________________________________<br>
cfe-commits mailing list<br>
<a moz-do-not-send="true"
href="mailto:cfe-commits@cs.uiuc.edu"
target="_blank">cfe-commits@cs.uiuc.edu</a><br>
<a moz-do-not-send="true"
href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits"
target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br>
</blockquote>
<br>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</blockquote>
<br>
</body>
</html>