[Patch][BugzillaID#18985] Document __has_feature(modules)

Ben Langmuir blangmuir at apple.com
Tue Mar 10 07:42:55 PDT 2015


Committed as r231789.  Feel free to close the PR, or I’ll do it later.  Thanks for the patch!

> On Mar 10, 2015, at 6:50 AM, Vassil Vassilev <vvasilev at cern.ch> wrote:
> 
> On 10/03/15 14:21, Ben Langmuir wrote:
>> Ack, your response somehow got lost.
>> 
>> LGTM.
> Thanks!
>> 
>>> +More information could be found `here <http://clang.llvm.org/docs/Modules.html <http://clang.llvm.org/docs/Modules.html>>`_
>> 
>> This should probably end with a period.
> You are right, could you check it in with the period in the end?
> Vassil
>> 
>>> On Mar 10, 2015, at 1:10 AM, Vassil Vassilev <vvasilev at cern.ch <mailto:vvasilev at cern.ch>> wrote:
>>> 
>>> ping... I really want to close that annoying bugzilla ticket ;)
>>> On 18/09/14 20:08, Vassil Vassilev wrote:
>>>> On 18/09/14 18:04, Ben Langmuir wrote: 
>>>>>> On Sep 18, 2014, at 3:47 AM, Vassil Vassilev <vasil.georgiev.vasilev at cern.ch> <mailto:vasil.georgiev.vasilev at cern.ch> 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 <vasil.georgiev.vasilev at cern.ch> <mailto:vasil.georgiev.vasilev at cern.ch> wrote: 
>>>>>>>> 
>>>>>>>> Hi, 
>>>>>>>>   I am attaching a patch addressing http://llvm.org/bugs/show_bug.cgi?id=18985 <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 
>>>>>>>> cfe-commits at cs.uiuc.edu <mailto:cfe-commits at cs.uiuc.edu> 
>>>>>>>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits <http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits> 
>>>>>> <Bug18985_1.diff> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> _______________________________________________
>>>> cfe-commits mailing list
>>>> cfe-commits at cs.uiuc.edu <mailto:cfe-commits at cs.uiuc.edu>
>>>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits <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/20150310/e248e97f/attachment.html>


More information about the cfe-commits mailing list