https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118364
Bug ID: 118364
Summary: promote -Wnarrowing warning to error for <=> with
non-constants
Product: gcc
Version: 15.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: mpolacek at gcc dot gnu.org
Target Milestone: ---
```
#include <compare>
void
g ()
{
int i = -1;
unsigned u = 1;
auto r = (i <=> u) < 0;
}
```
gives:
q.C: In function ‘void g()’:
q.C:8:13: warning: narrowing conversion of ‘i’ from ‘int’ to ‘unsigned int’
[-Wnarrowing]
8 | auto r = (i <=> u) < 0;
| ^
but clang++ emits an error. In GCC 16 we should probably emit an error as
well.