From ef1edd375116c6ab1dffb9ba30620353439b5afd Mon Sep 17 00:00:00 2001 From: Areloch Date: Wed, 28 Jun 2017 23:58:56 -0500 Subject: [PATCH] Works around the regressive behavior in the VSC++ compiler for VS2017 where the variadic templates would not compile correctly. Issue should be patched in future versions, so for now it'll target the 1910 version specifically. --- Engine/source/console/engineFunctions.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Engine/source/console/engineFunctions.h b/Engine/source/console/engineFunctions.h index 1b3a51e7d..274333ea6 100644 --- a/Engine/source/console/engineFunctions.h +++ b/Engine/source/console/engineFunctions.h @@ -108,7 +108,17 @@ private: std::tie(std::get(args)...) = defaultArgs; } +#ifdef _MSC_VER == 1910 + template + struct DodgyVCHelper + { + using type = typename std::enable_if::type; + }; + + template using MaybeSelfEnabled = typename DodgyVCHelper::type; +#else template using MaybeSelfEnabled = typename std::enable_if::type; +#endif template static MaybeSelfEnabled tailInit(TailTs ...tail) { std::tuple...> argsT;