diff --git a/wpiutil/src/main/native/include/wpi/FunctionExtras.h b/wpiutil/src/main/native/include/wpi/FunctionExtras.h index 8e45cda0e5..57bc8dcffc 100644 --- a/wpiutil/src/main/native/include/wpi/FunctionExtras.h +++ b/wpiutil/src/main/native/include/wpi/FunctionExtras.h @@ -37,6 +37,7 @@ #include "wpi/PointerIntPair.h" #include "wpi/PointerUnion.h" #include +#include namespace wpi { @@ -237,7 +238,11 @@ public: return *this; } - template unique_function(CallableT Callable) { + template + unique_function(CallableT Callable, + std::enable_if_t< + std::is_invocable_r_v< + ReturnT, CallableT, ParamTs...>>* = nullptr) { bool IsInlineStorage = true; void *CallableAddr = getInlineStorage(); if (sizeof(CallableT) > InlineStorageSize ||