Description
In straightforward spdlog-using code (that was changed a couple of years back to use FMT_STRING everywhere), after updating to spdlog 1.15.1 and an external fmt 11.1.3, I'm seeing this across the entire codebase. Building with Clang 19.1.6 set to C++20 using gnu stdlibc++ on Ubuntu 24.04:
error: implicit instantiation of undefined template 'fmt::detail::type_is_unformattable_for<FMT_COMPILE_STRING, char>'
| type_is_unformattable_for<T, char_type> _;
The line of code is (but this occurs identically on several hundred logging calls):
logger->debug(FMT_STRING("my string"));
I have seen various reported issues in fmt & spdlog repos saying this was fixed via issue fmtlib/fmt#4177 ... however I am on the latest code and am still seeing this issue. Removing FMT_STRING at any given callsite eliminates the error, but I'm not excited about making such a sweeping change across the codebase (and it would make reverting much harder). The macro still seems to be supported, however it appears to be broken.