r208345 - Remove -Wnon-modular-include
Richard Smith
richard at metafoo.co.uk
Thu May 8 16:23:15 PDT 2014
On Thu, May 8, 2014 at 4:21 PM, Argyrios Kyrtzidis <akyrtzi at gmail.com>wrote:
> Hi Richard,
>
> On May 8, 2014, at 1:27 PM, Richard Smith <richard at metafoo.co.uk> wrote:
>
> On Thu, May 8, 2014 at 1:20 PM, Richard Smith <richard at metafoo.co.uk>wrote:
>
>> On Thu, May 8, 2014 at 11:09 AM, Ben Langmuir <blangmuir at apple.com>wrote:
>>
>>> Author: benlangmuir
>>> Date: Thu May 8 13:09:29 2014
>>> New Revision: 208345
>>>
>>> URL: http://llvm.org/viewvc/llvm-project?rev=208345&view=rev
>>> Log:
>>> Remove -Wnon-modular-include
>>>
>>> But keep -Wnon-modular-include-in-[framework-]module
>>>
>>> This warning is too noisy and doesn't really indicate a problem for most
>>> people. Even though it would only really affect people using
>>> -Weverything, that seems bad so remove it.
>>>
>>
>> Wait a second, we were planning on using this to replace
>> -fmodules-strict-decluse. People using -Weverything need to use -Wno-foo
>> for the warnings they don't want; that's the cost of using that option.
>>
>
> From when -Weverything was added:
>
> Eli Friedman wrote:
> > This seems like a bad idea: people will start using it, then complain
> > whenever we add a new warning which isn't generically applicable
> > (suppose we add an opt-in warning for C-style casts in C++, for
> > example). We already have -Wextra for people who want lots of> warnings.
>
> Ted Kremenek responded:
> [...]
> > -Weverything is not for everybody, and for those that complain about
> > new warnings we can (and should) tell them to take the opt-in approach
> > as opposed to the opt-out approach. I don't see a problem with really
> > serving both sets of user preferences.
>
> => We do not get to use -Weverything as an excuse for removing warning
> that are noisy and that some users aren't interested in.
>
>
> This is not just noisy, it has no value IMO. How can we expect an
> application not to #include something textually and what is the user
> supposed to do when they see this warning ?
>
If the application intends to have all of its own headers modularized, this
warning can be used to check that. If the user sees this warning, and
they're in that case, they should either add the header to a module or
explicitly exclude it (if it's supposed to be textually included).
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140508/248e3de5/attachment.html>
More information about the cfe-commits
mailing list