[Bug c++/90734] [concepts] Pre-normalization substitution into constraints of templated function breaks subsumption

Casey at Carter dot net gcc-bugzilla@gcc.gnu.org
Fri Nov 15 18:40:00 GMT 2019


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

Casey Carter <Casey at Carter dot net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #4 from Casey Carter <Casey at Carter dot net> ---
There's some confusion here as a result of my inadequate description in the
original bug. The line `static_assert(S1<int>::f()); // Bogus error` is valid
but was not accepted and the line `static_assert(S2<int>::f()); // Bogus
non-error` is invalid but was not rejected. This should have been tagged both
"rejects-valid" and "accepts-invalid" (or better yet, I should have filed
separate issues instead of conflating the two).

As Andrew says, trunk now both accepts and rejects the cases it should here.
I'll simply close this since I don't think it provides any useful or unique
test case.


More information about the Gcc-bugs mailing list