Cpprest does some questionable macro definitions here. [microsoft/cpprestsdk@411a109/Release/include/cpprest/details/basic_types.h#L87](https://github.com/microsoft/cpprestsdk/blob/411a109150b270f23c8c97fa4ec9a0a4a98cdecf/Release/include/cpprest/details/basic_types.h#L87) The `U` Macro overrides the `U` typename in fmt causing fmt not to work. This definition is like a time-bomb waiting to cause problems anytime. ```cpp template <typename T, typename U = format_as_t<T>, FMT_ENABLE_IF(std::is_arithmetic<U>::value)> FMT_MAP_API auto map(const T& val) -> decltype(FMT_DECLTYPE_THIS map(U())) { return map(format_as(val)); } ``` Related https://github.com/fmtlib/fmt/issues/4180 Can you remove this macro?