diff --git a/cpp/autobuilder/Semmle.Autobuild.Cpp/CppAutobuilder.cs b/cpp/autobuilder/Semmle.Autobuild.Cpp/CppAutobuilder.cs index ee1d775e17d..e3853b44a0c 100644 --- a/cpp/autobuilder/Semmle.Autobuild.Cpp/CppAutobuilder.cs +++ b/cpp/autobuilder/Semmle.Autobuild.Cpp/CppAutobuilder.cs @@ -22,12 +22,7 @@ namespace Semmle.Autobuild.Cpp public class CppAutobuilder : Autobuilder { - private readonly DiagnosticClassifier classifier; - - public CppAutobuilder(IBuildActions actions, CppAutobuildOptions options) : base(actions, options) => - classifier = new DiagnosticClassifier(); - - protected override DiagnosticClassifier DiagnosticClassifier => classifier; + public CppAutobuilder(IBuildActions actions, CppAutobuildOptions options) : base(actions, options, new DiagnosticClassifier()) { } public override BuildScript GetBuildScript() { diff --git a/csharp/autobuilder/Semmle.Autobuild.CSharp/CSharpAutobuilder.cs b/csharp/autobuilder/Semmle.Autobuild.CSharp/CSharpAutobuilder.cs index a1126fdf12c..ed2ed4013ef 100644 --- a/csharp/autobuilder/Semmle.Autobuild.CSharp/CSharpAutobuilder.cs +++ b/csharp/autobuilder/Semmle.Autobuild.CSharp/CSharpAutobuilder.cs @@ -1,4 +1,4 @@ -using Semmle.Extraction.CSharp; +using Semmle.Extraction.CSharp; using Semmle.Util.Logging; using Semmle.Autobuild.Shared; using Semmle.Util; @@ -36,13 +36,8 @@ namespace Semmle.Autobuild.CSharp private readonly AutoBuildRule autoBuildRule; - protected override DiagnosticClassifier DiagnosticClassifier { get; } - - public CSharpAutobuilder(IBuildActions actions, CSharpAutobuildOptions options) : base(actions, options) - { + public CSharpAutobuilder(IBuildActions actions, CSharpAutobuildOptions options) : base(actions, options, new CSharpDiagnosticClassifier()) => this.autoBuildRule = new AutoBuildRule(this); - this.DiagnosticClassifier = new CSharpDiagnosticClassifier(); - } public override BuildScript GetBuildScript() { diff --git a/csharp/autobuilder/Semmle.Autobuild.Shared/Autobuilder.cs b/csharp/autobuilder/Semmle.Autobuild.Shared/Autobuilder.cs index 6a3b63dc27e..2335e15015e 100644 --- a/csharp/autobuilder/Semmle.Autobuild.Shared/Autobuilder.cs +++ b/csharp/autobuilder/Semmle.Autobuild.Shared/Autobuilder.cs @@ -190,10 +190,11 @@ namespace Semmle.Autobuild.Shared /// solution file and tools. /// /// The command line options. - protected Autobuilder(IBuildActions actions, TAutobuildOptions options) + protected Autobuilder(IBuildActions actions, TAutobuildOptions options, DiagnosticClassifier diagnosticClassifier) { Actions = actions; Options = options; + DiagnosticClassifier = diagnosticClassifier; pathsLazy = new Lazy>(() => { @@ -264,7 +265,7 @@ namespace Semmle.Autobuild.Shared public string DiagnosticsDir { get; } - protected abstract DiagnosticClassifier DiagnosticClassifier { get; } + protected DiagnosticClassifier DiagnosticClassifier { get; } private readonly ILogger logger = new ConsoleLogger(Verbosity.Info);