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

--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Robert Douglas from comment #1)
> I've also hit this issue in upgrading from 9.1 to 10.2
> 
> I presume it run into the same issue, but if it helps, this more closely
> matches my use case:
> https://godbolt.org/z/zb1bP5

That code:

template<typename... Params>
concept ParamsRemain = requires(Params)
{ requires sizeof...(Params) > 0; };

template<typename... Params>
void foo()
{
        static constexpr bool pr1 = ParamsRemain<Params...>;
};

int main()
{
        foo<>();
        return 0;
}

compiles with GCC 9 and -std=c++2a -fconcepts

compiles with GCC 10.1 and -std=c++2a

ice-on-valid-code with GCC 10.2.0, 10.2.1 and 11.0 with -std=c++2a

Reply via email to