[Bug c++/107428] New: trying to define a partial specialized concept does not give a good error message
pinskia at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Oct 26 20:45:30 GMT 2022
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107428
Bug ID: 107428
Summary: trying to define a partial specialized concept does
not give a good error message
Product: gcc
Version: 12.0
Status: UNCONFIRMED
Keywords: diagnostic
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: pinskia at gcc dot gnu.org
Target Milestone: ---
Take:
```
template<typename T, typename T1>
concept same = false;
template<typename T>
concept same<T, T> = true;
```
GCC produces:
```
<source>:6:13: error: expected '=' before '<' token
6 | concept same<T, T> = true;
| ^
```
While clang produces:
```
<source>:6:9: error: name defined in concept definition must be an identifier
concept same<T, T> = true;
^
```
While clang is definitely better than GCC. We could do even better at
sugguesting you can't do a partial specialization of a concept.
More information about the Gcc-bugs
mailing list