From 4186c3cef7cf53051f52d56e9b4ffb84c5502a03 Mon Sep 17 00:00:00 2001 From: Shauren Date: Mon, 31 Dec 2012 14:10:22 +0100 Subject: [PATCH] Buildsystem/MSVC: Enable and treat as errors compilation warning about not matching virtual function signatures. This will help scripters who might sometimes use a hook using improper parameters (or miss 'const' for example) --- cmake/compiler/msvc/settings.cmake | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/cmake/compiler/msvc/settings.cmake b/cmake/compiler/msvc/settings.cmake index d816a31405..d758d46640 100644 --- a/cmake/compiler/msvc/settings.cmake +++ b/cmake/compiler/msvc/settings.cmake @@ -55,3 +55,8 @@ endif() # Fixes a compiler-problem when using PCH - the /Ym flag is adjusted by the compiler in MSVC2012, hence we need to set an upper limit with /Zm to avoid disrupancies) # (And yes, this is a verified , unresolved bug with MSVC... *sigh*) string(REPLACE "/Zm1000" "/Zm500" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) + +# Enable and treat as errors the following warnings to easily detect virtual function signature failures: +# 'function' : member function does not override any base class virtual member function +# 'virtual_function' : no override available for virtual member function from base 'class'; function is hidden +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /we4263 /we4264")