Add default constructor to dynamic, make other constructors simpler and stricter
[folly.git] / folly / MapUtil.h
index 143dadc26314e6f16c50a32d49381dbaa398d763..598567a7682a435b9a9936d1b487553aa1156c30 100644 (file)
@@ -116,7 +116,9 @@ template <
     typename Func,
     typename = typename std::enable_if<std::is_convertible<
         typename std::result_of<Func()>::type,
-        const typename Map::mapped_type&>::value>::type>
+        const typename Map::mapped_type&>::value>::type,
+    typename = typename std::enable_if<
+        std::is_reference<typename std::result_of<Func()>::type>::value>::type>
 const typename Map::mapped_type& get_ref_default(
     const Map& map,
     const typename Map::key_type& key,