[cfe-commits] [PATCH] Implement -MG

Chris Lattner clattner at apple.com
Tue Jul 12 18:57:09 PDT 2011


On Jul 12, 2011, at 12:35 PM, Peter Collingbourne wrote:

> On Thu, Jun 30, 2011 at 11:40:26AM -0700, Chris Lattner wrote:
>> 
>> On Jun 30, 2011, at 9:54 AM, Peter Collingbourne wrote:
>> 
>>> Hi,
>>> 
>>> This patch implements -MG (and fixes PR9613).  OK to commit?
>>> 
>>> One potential issue with this patch is that it introduces a
>>> preprocessor flag whose purpose is to "manually" disable a fatal
>>> diagnostic, since I couldn't see a way to do this within the existing
>>> diagnostic system (Diagnostic::setDiagnosticMapping contains an assert
>>> which explicitly forbids this).
>> 
>> Cool, thanks for working on this.  Instead of tackling it this way, how about switching err_cannot_open_file diagnostic to be a warning (which default maps to fatal) with no -W flag.  Then the preprocessor could just remap this to ignore when in -MG mode.
>> 
>> What do you think?
> 
> Yes, turning err_pp_file_not_found into a warning seems like the
> right approach (I initially misunderstood the relationship between the
> "kind" of diagnostic and the default mapping).
> 
> I'm not sure that the remapping should be done in -cc1 though, it feels
> like a layering violation.  Personally I feel the best place to make
> the decision is in the driver, but I couldn't see an easy way to do
> this while preserving existing behaviour, so I added the remapping at
> an appropriate place in the frontend (lib/Frontend/DependencyFile.cpp)
> with a FIXME.
> 
> Committed in r134996.

Thanks Peter,

-Chris



More information about the cfe-commits mailing list