From 40b183aed954f4b18f79a769491bdce35d3af900 Mon Sep 17 00:00:00 2001 From: Basile Burg Date: Fri, 12 May 2017 15:25:58 +0200 Subject: [PATCH] fix #431, Virtual call in ctor - problem with overloaded virtual methods (#432) --- src/analysis/config.d | 4 ++-- src/analysis/vcall_in_ctor.d | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/analysis/config.d b/src/analysis/config.d index a4f0083..6557a32 100644 --- a/src/analysis/config.d +++ b/src/analysis/config.d @@ -172,8 +172,8 @@ struct StaticAnalysisConfig string properly_documented_public_functions = Check.disabled; @INI("Check for useless usage of the final attribute") - string final_attribute_check = Check.disabled; + string final_attribute_check = Check.enabled; @INI("Check for virtual calls in the class constructors") - string vcall_in_ctor = Check.disabled; + string vcall_in_ctor = Check.enabled; } diff --git a/src/analysis/vcall_in_ctor.d b/src/analysis/vcall_in_ctor.d index 567f906..d2b2ede 100644 --- a/src/analysis/vcall_in_ctor.d +++ b/src/analysis/vcall_in_ctor.d @@ -135,7 +135,10 @@ private: foreach (vm; _virtualMethods[$-1]) { if (call == vm) + { addErrorMessage(call.line, call.column, KEY, MSG); + break; + } } }