NoQ added inline comments.

================
Comment at: include/clang/StaticAnalyzer/Core/AnalyzerOptions.h:146-149
+/// If you'd like to add a new -cc1 flag, add it to
+/// include/clang/Driver/CC1Options.td, add a new field to store the value of
+/// that flag in this class, and initialize it in
+/// lib/Frontend/CompilerInvocation.cpp.
----------------
Szelethus wrote:
> NoQ wrote:
> > Szelethus wrote:
> > > NoQ wrote:
> > > > Szelethus wrote:
> > > > > NoQ wrote:
> > > > > > Nono, don't add more -cc1 flags :)
> > > > > Code review is there to stop adding unnecessary -cc1 flags. Are we 
> > > > > sure we wouldn't even like to document it? I myself will add at least 
> > > > > 2 more -cc1 flags in the future (-analyzer-config-help, 
> > > > > -analyzer-checker-option-help), that undoubtedly belong there.
> > > > But these flags wouldn't define new analyzer options(?)
> > > That is correct, but we do store similar cc1 flags here, because they 
> > > belong to the the analyzer.
> > > 
> > > Although, hm, some of those would be more fitting as -analyzer-config 
> > > flags, but I don't see how I could pull that off in a backward compatible 
> > > way.
> > Those were there before `AnalyzerOptions` were invented. That said, 
> > @george.karpenkov just made an experiment with converting 
> > `-analyzer-eagerly-assume` into `-analyzer-config eagerly-assume` (D51251) 
> > and it seems to have went well. For feature flags that were not really ever 
> > supposed to have been appended by GUIs, it is enough to just make sure that 
> > the correct behavior is enabled by default; there's no need to maintain 
> > backwards compatibility.
> Hmm, maybe I could add that to my TODO list :)
> 
> I think the comment should still mention cc1 flags, but with an addition:
> > Add a -cc1 only if your flag is related to the Static Analyzer, but doesn't 
> > actually change the actual analysis.
Sounds good! Or something like that: "TODO: Some of these options are 
controlled by raw frontend flags. These should be eventually converted into 
-analyzer-config flags. New analyzer options should not be implemented as 
frontend flags. Frontend flags still make sense for things that do not affect 
the actual analysis."


https://reviews.llvm.org/D53483



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to