Fix build in GCC.

This commit is contained in:
John Preston 2019-06-18 12:02:58 +02:00
parent 366413a0a6
commit f35085800a
1 changed files with 6 additions and 2 deletions

View File

@ -80,7 +80,11 @@ protected:
private: private:
template <typename InitMethod, typename ...InitArgs> template <typename InitMethod, typename ...InitArgs>
struct Initer { struct Initer {
template <typename OtherMethod, typename ...OtherArgs> template <
typename OtherMethod,
typename ...OtherArgs,
typename = std::enable_if_t<
std::is_constructible_v<InitMethod, OtherMethod&&>>>
Initer(OtherMethod &&method, OtherArgs &&...args); Initer(OtherMethod &&method, OtherArgs &&...args);
void operator()(not_null<GenericBox*> box); void operator()(not_null<GenericBox*> box);
@ -106,7 +110,7 @@ private:
}; };
template <typename InitMethod, typename ...InitArgs> template <typename InitMethod, typename ...InitArgs>
template <typename OtherMethod, typename ...OtherArgs> template <typename OtherMethod, typename ...OtherArgs, typename>
GenericBox::Initer<InitMethod, InitArgs...>::Initer( GenericBox::Initer<InitMethod, InitArgs...>::Initer(
OtherMethod &&method, OtherMethod &&method,
OtherArgs &&...args) OtherArgs &&...args)