[cfe-commits] r162928 - in /cfe/trunk: include/clang/Frontend/AnalyzerOptions.h include/clang/Frontend/CompilerInvocation.h include/clang/StaticAnalyzer/AnalyzerOptions.h include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h lib/Stati

Ted Kremenek kremenek at apple.com
Thu Aug 30 14:25:00 PDT 2012


On Aug 30, 2012, at 2:18 PM, Ted Kremenek <kremenek at apple.com> wrote:

> On Aug 30, 2012, at 1:48 PM, Matt Beaumont-Gay <matthewbg at google.com> wrote:
> 
>> On Thu, Aug 30, 2012 at 12:26 PM, Ted Kremenek <kremenek at apple.com> wrote:
>>> --- cfe/trunk/include/clang/Frontend/CompilerInvocation.h (original)
>>> +++ cfe/trunk/include/clang/Frontend/CompilerInvocation.h Thu Aug 30 14:26:38 2012
>>> @@ -13,7 +13,7 @@
>>> #include "clang/Basic/LangOptions.h"
>>> #include "clang/Basic/TargetOptions.h"
>>> #include "clang/Basic/FileSystemOptions.h"
>>> -#include "clang/Frontend/AnalyzerOptions.h"
>>> +#include "clang/StaticAnalyzer/AnalyzerOptions.h"
>> 
>> Hi Ted,
>> 
>> This introduces a cyclic dependency between StaticAnalyzer and
>> Frontend (lib/StaticAnalyzer/Frontend/FrontendActions.cpp includes
>> "clang/Frontend/CompilerInstance.h"). Can we factor these headers to
>> fix the cycle?
>> 
>> -Matt
> 
> Hi Matt,
> 
> I don't see how this introduces that dependency.  Wasn't it there already?  AnalyzerOptions.h does not include anything from clang/Frontend.  I didn't change any of the other headers.  I'm not contesting that there is a cyclic dependency; I just don't see how I introduced one.
> 
> Ted

Oh, I see what you mean.  I'm not certain if this really is a cyclic dependency.  AnalyzerOptions.h is really a "leaf" header that doesn't include anything else.  It just defines a common object to pass data from the frontend to the analyzer engine.




More information about the cfe-commits mailing list