The specialization of format_kind for optional is causing a problem when
optional is imported and included. The comments on the PR strongly
suggest that this is a frontend bug; this commit just works around the
issue by specifying the type of format_kind<optional<T>> to be
`range_format`, rather than leaving the compiler deduce it via `auto`.
PR c++/120644
libstdc++-v3/ChangeLog:
* include/std/optional (format_kind): Do not use `auto`.
ranges::enable_view<optional<_Tp>> = true;
template<typename _Tp>
- inline constexpr auto
+ inline constexpr range_format
format_kind<optional<_Tp>> = range_format::disabled;
#endif // __cpp_lib_optional_range_support