https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108538
Bug ID: 108538 Summary: unexpected -Wnarrowing errors in -fpermissive mode Product: gcc Version: 12.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: stsp at users dot sourceforge.net Target Milestone: --- int main() { unsigned char a[1] = { -1 }; return a[0]; } $ g++ -fpermissive nar.cpp nar.cpp: In function ‘int main()’: nar.cpp:3:28: error: narrowing conversion of ‘-1’ from ‘int’ to ‘unsigned char’ [-Wnarrowing] 3 | unsigned char a[1] = { -1 }; While I know that some -Wnarrowing warnings were promoted to an errors, was it the right decision also in -fpermissive mode, which accepts most of the C code?