https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95626
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |DUPLICATE --- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> --- This is not a bug, subsumption doesn't work for !B To make it work you need to define a concept, as in your second example. This is explained in the C++20 draft by the note in [temp.constr.op] p5, which was added by https://wg21.link/p1971r0#US111 *** This bug has been marked as a duplicate of bug 92102 ***