I have the following code:
#include <print>
#include <vector>
int main() {
std::vector<int> v{1, 2, 3};
std::println("{}", v);
}
Among the numerous errors this produces, there is (clang++ -std=c++23 -stdlib=libc++
, https://godbolt.org/z/3z9Tseh37):
[...]/format_arg_store.h:167:17: error: static assertion failed due to [...]
167 | static_assert(__arg != __arg_t::__none, "the supplied type is not formattable");
| ^~~~~~~~~~~~~~~~~~~~~~~~
This confuses me because according to the cppreference C++23 compiler support page, libc++ support std::println
and implements P2286: Formatting Ranges.
Am I doing something wrong or is this a standard library bug?