diff --git a/src/a2functional.h b/src/a2functional.h index 11391e51..28a49001 100644 --- a/src/a2functional.h +++ b/src/a2functional.h @@ -181,13 +181,15 @@ struct RefLess { }; template -std::unique_ptr make_unique(U&&... u) +typename std::enable_if::value, std::unique_ptr>::type +make_unique(U&&... u) { return std::unique_ptr(new T(std::forward(u)...)); } template -std::unique_ptr make_unique(size_t size) +typename std::enable_if::value, std::unique_ptr>::type +make_unique(size_t size) { return std::unique_ptr(new typename std::remove_extent::type[size]()); }