[PATCH] D114006: [analyzer][NFC] Enable access to CodeGenOptions from analyzer's instances

2021-12-08 Thread Denys Petrov via Phabricator via cfe-commits
ASDenysPetrov updated this revision to Diff 392666.
ASDenysPetrov added a comment.

Fixed unit test.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D114006/new/

https://reviews.llvm.org/D114006

Files:
  clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
  clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
  clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
  clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
  clang/lib/StaticAnalyzer/Frontend/AnalyzerHelpFlags.cpp
  clang/lib/StaticAnalyzer/Frontend/CreateCheckerManager.cpp
  clang/unittests/StaticAnalyzer/Reusables.h

Index: clang/unittests/StaticAnalyzer/Reusables.h
===
--- clang/unittests/StaticAnalyzer/Reusables.h
+++ clang/unittests/StaticAnalyzer/Reusables.h
@@ -57,12 +57,12 @@
 
 public:
   ExprEngineConsumer(CompilerInstance )
-  : C(C),
-ChkMgr(C.getASTContext(), *C.getAnalyzerOpts(), C.getPreprocessor()),
+  : C(C), ChkMgr(C.getASTContext(), *C.getAnalyzerOpts(),
+ C.getCodeGenOpts(), C.getPreprocessor()),
 CTU(C), Consumers(),
 AMgr(C.getASTContext(), C.getPreprocessor(), Consumers,
  CreateRegionStoreManager, CreateRangeConstraintManager, ,
- *C.getAnalyzerOpts()),
+ *C.getAnalyzerOpts(), C.getCodeGenOpts()),
 VisitedCallees(), FS(),
 Eng(CTU, AMgr, , , ExprEngine::Inline_Regular) {}
 };
Index: clang/lib/StaticAnalyzer/Frontend/CreateCheckerManager.cpp
===
--- clang/lib/StaticAnalyzer/Frontend/CreateCheckerManager.cpp
+++ clang/lib/StaticAnalyzer/Frontend/CreateCheckerManager.cpp
@@ -18,11 +18,12 @@
 namespace ento {
 
 CheckerManager::CheckerManager(
-ASTContext , AnalyzerOptions , const Preprocessor ,
+ASTContext , AnalyzerOptions ,
+const CodeGenOptions , const Preprocessor ,
 ArrayRef plugins,
 ArrayRef> checkerRegistrationFns)
-: Context(), LangOpts(Context.getLangOpts()), AOptions(AOptions),
-  PP(), Diags(Context.getDiagnostics()),
+: Context(), LangOpts(Context.getLangOpts()), CodeGenOpts(CGOpts),
+  AOptions(AOptions), PP(), Diags(Context.getDiagnostics()),
   RegistryData(std::make_unique()) {
   CheckerRegistry Registry(*RegistryData, plugins, Context.getDiagnostics(),
AOptions, checkerRegistrationFns);
@@ -33,9 +34,10 @@
 
 CheckerManager::CheckerManager(AnalyzerOptions ,
const LangOptions ,
+   const CodeGenOptions ,
DiagnosticsEngine ,
ArrayRef plugins)
-: LangOpts(LangOpts), AOptions(AOptions), Diags(Diags),
+: LangOpts(LangOpts), CodeGenOpts(CGOpts), AOptions(AOptions), Diags(Diags),
   RegistryData(std::make_unique()) {
   CheckerRegistry Registry(*RegistryData, plugins, Diags, AOptions, {});
   Registry.initializeRegistry(*this);
Index: clang/lib/StaticAnalyzer/Frontend/AnalyzerHelpFlags.cpp
===
--- clang/lib/StaticAnalyzer/Frontend/AnalyzerHelpFlags.cpp
+++ clang/lib/StaticAnalyzer/Frontend/AnalyzerHelpFlags.cpp
@@ -25,35 +25,29 @@
 using namespace clang;
 using namespace ento;
 
+static CheckerManager CreateCheckerManager(CompilerInstance ) {
+  return {*CI.getAnalyzerOpts(), CI.getLangOpts(), CI.getCodeGenOpts(),
+  CI.getDiagnostics(), CI.getFrontendOpts().Plugins};
+}
+
 void ento::printCheckerHelp(raw_ostream , CompilerInstance ) {
   out << "OVERVIEW: Clang Static Analyzer Checkers List\n\n";
   out << "USAGE: -analyzer-checker \n\n";
 
-  auto CheckerMgr = std::make_unique(
-  *CI.getAnalyzerOpts(), CI.getLangOpts(), CI.getDiagnostics(),
-  CI.getFrontendOpts().Plugins);
-
-  CheckerMgr->getCheckerRegistryData().printCheckerWithDescList(
+  CreateCheckerManager(CI).getCheckerRegistryData().printCheckerWithDescList(
   *CI.getAnalyzerOpts(), out);
 }
 
 void ento::printEnabledCheckerList(raw_ostream , CompilerInstance ) {
   out << "OVERVIEW: Clang Static Analyzer Enabled Checkers List\n\n";
 
-  auto CheckerMgr = std::make_unique(
-  *CI.getAnalyzerOpts(), CI.getLangOpts(), CI.getDiagnostics(),
-  CI.getFrontendOpts().Plugins);
-
-  CheckerMgr->getCheckerRegistryData().printEnabledCheckerList(out);
+  CreateCheckerManager(CI).getCheckerRegistryData().printEnabledCheckerList(
+  out);
 }
 
 void ento::printCheckerConfigList(raw_ostream , CompilerInstance ) {
 
-  auto CheckerMgr = std::make_unique(
-  *CI.getAnalyzerOpts(), CI.getLangOpts(), CI.getDiagnostics(),
-  CI.getFrontendOpts().Plugins);
-
-  CheckerMgr->getCheckerRegistryData().printCheckerOptionList(
+  CreateCheckerManager(CI).getCheckerRegistryData().printCheckerOptionList(
   *CI.getAnalyzerOpts(), out);
 }
 
Index: clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp

[PATCH] D114006: [analyzer][NFC] Enable access to CodeGenOptions from analyzer's instances

2021-12-07 Thread Denys Petrov via Phabricator via cfe-commits
ASDenysPetrov updated this revision to Diff 392557.
ASDenysPetrov edited the summary of this revision.
ASDenysPetrov added a comment.

Passed a `CodeGenOptions` reference to `CheckerManager` as well. (Adjusted to 
D114718 )


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D114006/new/

https://reviews.llvm.org/D114006

Files:
  clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
  clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
  clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
  clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
  clang/lib/StaticAnalyzer/Frontend/AnalyzerHelpFlags.cpp
  clang/lib/StaticAnalyzer/Frontend/CreateCheckerManager.cpp
  clang/unittests/StaticAnalyzer/Reusables.h

Index: clang/unittests/StaticAnalyzer/Reusables.h
===
--- clang/unittests/StaticAnalyzer/Reusables.h
+++ clang/unittests/StaticAnalyzer/Reusables.h
@@ -62,7 +62,7 @@
 CTU(C), Consumers(),
 AMgr(C.getASTContext(), C.getPreprocessor(), Consumers,
  CreateRegionStoreManager, CreateRangeConstraintManager, ,
- *C.getAnalyzerOpts()),
+ *C.getAnalyzerOpts(), C.getCodeGenOpts()),
 VisitedCallees(), FS(),
 Eng(CTU, AMgr, , , ExprEngine::Inline_Regular) {}
 };
Index: clang/lib/StaticAnalyzer/Frontend/CreateCheckerManager.cpp
===
--- clang/lib/StaticAnalyzer/Frontend/CreateCheckerManager.cpp
+++ clang/lib/StaticAnalyzer/Frontend/CreateCheckerManager.cpp
@@ -18,11 +18,12 @@
 namespace ento {
 
 CheckerManager::CheckerManager(
-ASTContext , AnalyzerOptions , const Preprocessor ,
+ASTContext , AnalyzerOptions ,
+const CodeGenOptions , const Preprocessor ,
 ArrayRef plugins,
 ArrayRef> checkerRegistrationFns)
-: Context(), LangOpts(Context.getLangOpts()), AOptions(AOptions),
-  PP(), Diags(Context.getDiagnostics()),
+: Context(), LangOpts(Context.getLangOpts()), CodeGenOpts(CGOpts),
+  AOptions(AOptions), PP(), Diags(Context.getDiagnostics()),
   RegistryData(std::make_unique()) {
   CheckerRegistry Registry(*RegistryData, plugins, Context.getDiagnostics(),
AOptions, checkerRegistrationFns);
@@ -33,9 +34,10 @@
 
 CheckerManager::CheckerManager(AnalyzerOptions ,
const LangOptions ,
+   const CodeGenOptions ,
DiagnosticsEngine ,
ArrayRef plugins)
-: LangOpts(LangOpts), AOptions(AOptions), Diags(Diags),
+: LangOpts(LangOpts), CodeGenOpts(CGOpts), AOptions(AOptions), Diags(Diags),
   RegistryData(std::make_unique()) {
   CheckerRegistry Registry(*RegistryData, plugins, Diags, AOptions, {});
   Registry.initializeRegistry(*this);
Index: clang/lib/StaticAnalyzer/Frontend/AnalyzerHelpFlags.cpp
===
--- clang/lib/StaticAnalyzer/Frontend/AnalyzerHelpFlags.cpp
+++ clang/lib/StaticAnalyzer/Frontend/AnalyzerHelpFlags.cpp
@@ -25,35 +25,29 @@
 using namespace clang;
 using namespace ento;
 
+static CheckerManager CreateCheckerManager(CompilerInstance ) {
+  return {*CI.getAnalyzerOpts(), CI.getLangOpts(), CI.getCodeGenOpts(),
+  CI.getDiagnostics(), CI.getFrontendOpts().Plugins};
+}
+
 void ento::printCheckerHelp(raw_ostream , CompilerInstance ) {
   out << "OVERVIEW: Clang Static Analyzer Checkers List\n\n";
   out << "USAGE: -analyzer-checker \n\n";
 
-  auto CheckerMgr = std::make_unique(
-  *CI.getAnalyzerOpts(), CI.getLangOpts(), CI.getDiagnostics(),
-  CI.getFrontendOpts().Plugins);
-
-  CheckerMgr->getCheckerRegistryData().printCheckerWithDescList(
+  CreateCheckerManager(CI).getCheckerRegistryData().printCheckerWithDescList(
   *CI.getAnalyzerOpts(), out);
 }
 
 void ento::printEnabledCheckerList(raw_ostream , CompilerInstance ) {
   out << "OVERVIEW: Clang Static Analyzer Enabled Checkers List\n\n";
 
-  auto CheckerMgr = std::make_unique(
-  *CI.getAnalyzerOpts(), CI.getLangOpts(), CI.getDiagnostics(),
-  CI.getFrontendOpts().Plugins);
-
-  CheckerMgr->getCheckerRegistryData().printEnabledCheckerList(out);
+  CreateCheckerManager(CI).getCheckerRegistryData().printEnabledCheckerList(
+  out);
 }
 
 void ento::printCheckerConfigList(raw_ostream , CompilerInstance ) {
 
-  auto CheckerMgr = std::make_unique(
-  *CI.getAnalyzerOpts(), CI.getLangOpts(), CI.getDiagnostics(),
-  CI.getFrontendOpts().Plugins);
-
-  CheckerMgr->getCheckerRegistryData().printCheckerOptionList(
+  CreateCheckerManager(CI).getCheckerRegistryData().printCheckerOptionList(
   *CI.getAnalyzerOpts(), out);
 }
 
Index: clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
===
--- clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp

[PATCH] D114006: [analyzer][NFC] Enable access to CodeGenOptions from analyzer's instances

2021-11-19 Thread Denys Petrov via Phabricator via cfe-commits
ASDenysPetrov added a comment.

In D114006#3142313 , @martong wrote:

> LGTM!

Thanks, guys!
I'll load it as soon as D110927  also be 
ready for load(I'm working on it), as this patch is just a preparatory one.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D114006/new/

https://reviews.llvm.org/D114006

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


[PATCH] D114006: [analyzer][NFC] Enable access to CodeGenOptions from analyzer's instances

2021-11-19 Thread Gabor Marton via Phabricator via cfe-commits
martong accepted this revision.
martong added a comment.

LGTM!


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D114006/new/

https://reviews.llvm.org/D114006

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


[PATCH] D114006: [analyzer][NFC] Enable access to CodeGenOptions from analyzer's instances

2021-11-16 Thread Denys Petrov via Phabricator via cfe-commits
ASDenysPetrov added a comment.

In D114006#3135456 , @steakhal wrote:

> Sweet!
> I think commit titles are not punctuated, even though they start with an 
> uppercase letter.

Thanks! That depends on the mood at the particular moment :) But seriously, 
it's an automatic typo. I do it every other time :) Fixed.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D114006/new/

https://reviews.llvm.org/D114006

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


[PATCH] D114006: [analyzer][NFC] Enable access to CodeGenOptions from analyzer's instances.

2021-11-16 Thread Denys Petrov via Phabricator via cfe-commits
ASDenysPetrov updated this revision to Diff 387773.
ASDenysPetrov added a comment.

Fixed failed unittest.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D114006/new/

https://reviews.llvm.org/D114006

Files:
  clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
  clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
  clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
  clang/unittests/StaticAnalyzer/Reusables.h

Index: clang/unittests/StaticAnalyzer/Reusables.h
===
--- clang/unittests/StaticAnalyzer/Reusables.h
+++ clang/unittests/StaticAnalyzer/Reusables.h
@@ -62,7 +62,7 @@
 CTU(C), Consumers(),
 AMgr(C.getASTContext(), C.getPreprocessor(), Consumers,
  CreateRegionStoreManager, CreateRangeConstraintManager, ,
- *C.getAnalyzerOpts()),
+ *C.getAnalyzerOpts(), C.getCodeGenOpts()),
 VisitedCallees(), FS(),
 Eng(CTU, AMgr, , , ExprEngine::Inline_Regular) {}
 };
Index: clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
===
--- clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
+++ clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
@@ -88,6 +88,7 @@
   Preprocessor 
   const std::string OutDir;
   AnalyzerOptionsRef Opts;
+  const CodeGenOptions 
   ArrayRef Plugins;
   CodeInjector *Injector;
   cross_tu::CrossTranslationUnitContext CTU;
@@ -121,11 +122,11 @@
   FunctionSummariesTy FunctionSummaries;
 
   AnalysisConsumer(CompilerInstance , const std::string ,
-   AnalyzerOptionsRef opts, ArrayRef plugins,
-   CodeInjector *injector)
+   AnalyzerOptionsRef opts, const CodeGenOptions ,
+   ArrayRef plugins, CodeInjector *injector)
   : RecVisitorMode(0), RecVisitorBR(nullptr), Ctx(nullptr),
 PP(CI.getPreprocessor()), OutDir(outdir), Opts(std::move(opts)),
-Plugins(plugins), Injector(injector), CTU(CI),
+CodeGenOpts(CGOpts), Plugins(plugins), Injector(injector), CTU(CI),
 MacroExpansions(CI.getLangOpts()) {
 DigestAnalyzerOptions();
 if (Opts->AnalyzerDisplayProgress || Opts->PrintStats ||
@@ -231,9 +232,9 @@
 checkerMgr = std::make_unique(*Ctx, *Opts, PP, Plugins,
   CheckerRegistrationFns);
 
-Mgr = std::make_unique(*Ctx, PP, PathConsumers,
-CreateStoreMgr, CreateConstraintMgr,
-checkerMgr.get(), *Opts, Injector);
+Mgr = std::make_unique(
+*Ctx, PP, PathConsumers, CreateStoreMgr, CreateConstraintMgr,
+checkerMgr.get(), *Opts, CodeGenOpts, Injector);
   }
 
   /// Store the top level decls in the set to be processed later on.
@@ -712,7 +713,7 @@
   bool hasModelPath = analyzerOpts->Config.count("model-path") > 0;
 
   return std::make_unique(
-  CI, CI.getFrontendOpts().OutputFile, analyzerOpts,
+  CI, CI.getFrontendOpts().OutputFile, analyzerOpts, CI.getCodeGenOpts(),
   CI.getFrontendOpts().Plugins,
   hasModelPath ? new ModelInjector(CI) : nullptr);
 }
Index: clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
===
--- clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
+++ clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
@@ -13,32 +13,26 @@
 
 void AnalysisManager::anchor() { }
 
-AnalysisManager::AnalysisManager(ASTContext , Preprocessor ,
- const PathDiagnosticConsumers ,
- StoreManagerCreator storemgr,
- ConstraintManagerCreator constraintmgr,
- CheckerManager *checkerMgr,
- AnalyzerOptions ,
- CodeInjector *injector)
+AnalysisManager::AnalysisManager(
+ASTContext , Preprocessor , const PathDiagnosticConsumers ,
+StoreManagerCreator storemgr, ConstraintManagerCreator constraintmgr,
+CheckerManager *checkerMgr, AnalyzerOptions ,
+const CodeGenOptions , CodeInjector *injector)
 : AnaCtxMgr(
   ASTCtx, Options.UnoptimizedCFG,
   Options.ShouldIncludeImplicitDtorsInCFG,
-  /*addInitializers=*/true,
-  Options.ShouldIncludeTemporaryDtorsInCFG,
+  /*addInitializers=*/true, Options.ShouldIncludeTemporaryDtorsInCFG,
   Options.ShouldIncludeLifetimeInCFG,
   // Adding LoopExit elements to the CFG is a requirement for loop
   // unrolling.
-  Options.ShouldIncludeLoopExitInCFG ||
-Options.ShouldUnrollLoops,
-  Options.ShouldIncludeScopesInCFG,
-  Options.ShouldSynthesizeBodies,
+  Options.ShouldIncludeLoopExitInCFG || Options.ShouldUnrollLoops,
+  Options.ShouldIncludeScopesInCFG, Options.ShouldSynthesizeBodies,
 

[PATCH] D114006: [analyzer][NFC] Enable access to CodeGenOptions from analyzer's instances.

2021-11-16 Thread Balázs Benics via Phabricator via cfe-commits
steakhal accepted this revision.
steakhal added a comment.
This revision is now accepted and ready to land.

Sweet!
I think commit titles are not punctuated, even though they start with an 
uppercase letter.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D114006/new/

https://reviews.llvm.org/D114006

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


[PATCH] D114006: [analyzer]{NFC} Enable access to CodeGenOptions from analyzer's instances.

2021-11-16 Thread Denys Petrov via Phabricator via cfe-commits
ASDenysPetrov created this revision.
ASDenysPetrov added reviewers: martong, steakhal, Charusso, Szelethus, NoQ.
ASDenysPetrov added a project: clang.
Herald added subscribers: manas, dkrupp, donat.nagy, mikhail.ramalho, 
a.sidorin, rnkovacs, szepet, baloghadamsoftware, xazax.hun.
ASDenysPetrov requested review of this revision.
Herald added a subscriber: cfe-commits.

Passed a `CodeGenOptions` reference from `CompilerInstance` to 
`AnalysisConsumer` and then to `AnalysisManager` to enable access to the 
options for CSA instances such as `StoreManager`, `ConstraintManager` and 
others, This patch is a preliminary one for D110927 
.

NOTE: The half of the changes is just formatting.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D114006

Files:
  clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
  clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
  clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp

Index: clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
===
--- clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
+++ clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
@@ -88,6 +88,7 @@
   Preprocessor 
   const std::string OutDir;
   AnalyzerOptionsRef Opts;
+  const CodeGenOptions 
   ArrayRef Plugins;
   CodeInjector *Injector;
   cross_tu::CrossTranslationUnitContext CTU;
@@ -121,11 +122,11 @@
   FunctionSummariesTy FunctionSummaries;
 
   AnalysisConsumer(CompilerInstance , const std::string ,
-   AnalyzerOptionsRef opts, ArrayRef plugins,
-   CodeInjector *injector)
+   AnalyzerOptionsRef opts, const CodeGenOptions ,
+   ArrayRef plugins, CodeInjector *injector)
   : RecVisitorMode(0), RecVisitorBR(nullptr), Ctx(nullptr),
 PP(CI.getPreprocessor()), OutDir(outdir), Opts(std::move(opts)),
-Plugins(plugins), Injector(injector), CTU(CI),
+CodeGenOpts(CGOpts), Plugins(plugins), Injector(injector), CTU(CI),
 MacroExpansions(CI.getLangOpts()) {
 DigestAnalyzerOptions();
 if (Opts->AnalyzerDisplayProgress || Opts->PrintStats ||
@@ -231,9 +232,9 @@
 checkerMgr = std::make_unique(*Ctx, *Opts, PP, Plugins,
   CheckerRegistrationFns);
 
-Mgr = std::make_unique(*Ctx, PP, PathConsumers,
-CreateStoreMgr, CreateConstraintMgr,
-checkerMgr.get(), *Opts, Injector);
+Mgr = std::make_unique(
+*Ctx, PP, PathConsumers, CreateStoreMgr, CreateConstraintMgr,
+checkerMgr.get(), *Opts, CodeGenOpts, Injector);
   }
 
   /// Store the top level decls in the set to be processed later on.
@@ -712,7 +713,7 @@
   bool hasModelPath = analyzerOpts->Config.count("model-path") > 0;
 
   return std::make_unique(
-  CI, CI.getFrontendOpts().OutputFile, analyzerOpts,
+  CI, CI.getFrontendOpts().OutputFile, analyzerOpts, CI.getCodeGenOpts(),
   CI.getFrontendOpts().Plugins,
   hasModelPath ? new ModelInjector(CI) : nullptr);
 }
Index: clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
===
--- clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
+++ clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
@@ -13,32 +13,26 @@
 
 void AnalysisManager::anchor() { }
 
-AnalysisManager::AnalysisManager(ASTContext , Preprocessor ,
- const PathDiagnosticConsumers ,
- StoreManagerCreator storemgr,
- ConstraintManagerCreator constraintmgr,
- CheckerManager *checkerMgr,
- AnalyzerOptions ,
- CodeInjector *injector)
+AnalysisManager::AnalysisManager(
+ASTContext , Preprocessor , const PathDiagnosticConsumers ,
+StoreManagerCreator storemgr, ConstraintManagerCreator constraintmgr,
+CheckerManager *checkerMgr, AnalyzerOptions ,
+const CodeGenOptions , CodeInjector *injector)
 : AnaCtxMgr(
   ASTCtx, Options.UnoptimizedCFG,
   Options.ShouldIncludeImplicitDtorsInCFG,
-  /*addInitializers=*/true,
-  Options.ShouldIncludeTemporaryDtorsInCFG,
+  /*addInitializers=*/true, Options.ShouldIncludeTemporaryDtorsInCFG,
   Options.ShouldIncludeLifetimeInCFG,
   // Adding LoopExit elements to the CFG is a requirement for loop
   // unrolling.
-  Options.ShouldIncludeLoopExitInCFG ||
-Options.ShouldUnrollLoops,
-  Options.ShouldIncludeScopesInCFG,
-  Options.ShouldSynthesizeBodies,
+  Options.ShouldIncludeLoopExitInCFG || Options.ShouldUnrollLoops,
+  Options.ShouldIncludeScopesInCFG, Options.ShouldSynthesizeBodies,