mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-07-13 15:44:36 +00:00
Merge pull request #2030 from Areloch/2017TemplateFix
VS2017 compiler workaround
This commit is contained in:
commit
ec400e373f
1 changed files with 10 additions and 0 deletions
|
|
@ -108,7 +108,17 @@ private:
|
||||||
std::tie(std::get<I + (sizeof...(ArgTs) - sizeof...(TailTs))>(args)...) = defaultArgs;
|
std::tie(std::get<I + (sizeof...(ArgTs) - sizeof...(TailTs))>(args)...) = defaultArgs;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef _MSC_VER == 1910
|
||||||
|
template<typename ...TailTs>
|
||||||
|
struct DodgyVCHelper
|
||||||
|
{
|
||||||
|
using type = typename std::enable_if<sizeof...(TailTs) <= sizeof...(ArgTs), decltype(mArgs)>::type;
|
||||||
|
};
|
||||||
|
|
||||||
|
template<typename ...TailTs> using MaybeSelfEnabled = typename DodgyVCHelper<TailTs...>::type;
|
||||||
|
#else
|
||||||
template<typename ...TailTs> using MaybeSelfEnabled = typename std::enable_if<sizeof...(TailTs) <= sizeof...(ArgTs), decltype(mArgs)>::type;
|
template<typename ...TailTs> using MaybeSelfEnabled = typename std::enable_if<sizeof...(TailTs) <= sizeof...(ArgTs), decltype(mArgs)>::type;
|
||||||
|
#endif
|
||||||
|
|
||||||
template<typename ...TailTs> static MaybeSelfEnabled<TailTs...> tailInit(TailTs ...tail) {
|
template<typename ...TailTs> static MaybeSelfEnabled<TailTs...> tailInit(TailTs ...tail) {
|
||||||
std::tuple<DefVST<ArgTs>...> argsT;
|
std::tuple<DefVST<ArgTs>...> argsT;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue