[Bug c++/92268] Constraint normalization substitutes parameter too early

jason at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Oct 30 03:27:00 GMT 2019


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

Jason Merrill <jason at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jason at gcc dot gnu.org

--- Comment #4 from Jason Merrill <jason at gcc dot gnu.org> ---
Smaller example:

template <class T> concept Two = true;
template <class T> concept One = Two<typename T::type>;
template <class T> concept Zero = requires
  {
   { T() } -> One;
  };

template <class T>
void f() requires Zero<T>;
template <class T>
void f(...);

int main()
{
  f<int>();
}


More information about the Gcc-bugs mailing list