https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113366

--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Odd.

We get the type/value mismatch from here:

        template<typename _Tp>
          using __maybe_const_t
            = __conditional_t<__format::__formattable_with<_Tp, _Context>,
                              const _Tp, _Tp>;


Where the boolean condition is:

  template<typename _Tp, typename _Context,
           typename _Formatter
             = typename _Context::template formatter_type<remove_const_t<_Tp>>,
           typename _ParseContext
             = basic_format_parse_context<typename _Context::char_type>>
    concept __formattable_with
      = semiregular<_Formatter>
          && requires (const _Formatter __cf, _Tp&& __t, _Context __fc)
    {
      { __cf.format(__t, __fc) } -> same_as<typename _Context::iterator>;
    };


That seems like a valid concept. Is something in the -fconcepts-ts code
tripping up?

Reply via email to