https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89055
Bug ID: 89055 Summary: wrong location with predefined macros Product: gcc Version: 9.0 Status: UNCONFIRMED Severity: trivial Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: msebor at gcc dot gnu.org Target Milestone: --- While adding tests for a fix for bug 87996 I noticed that the location in diagnostic messages for excessive array size expressions involving predefined constants like __SIZE_MAX__ (or macros like SIZE_MAX) isn't quite the same as without such constants. It's a minor aesthetic glitch but one that suggests there's some underlying bug somewhere that might be worth investigating. $ cat t.C && gcc -S t.C char a[~0LU << 1]; char b[__SIZE_MAX__ << 1]; t.C:1:13: error: size of array ‘a’ is negative 1 | char a[~0LU << 1]; | ~~~~~^~~~ t.C:2:21: error: size of array ‘b’ is negative 2 | char b[__SIZE_MAX__ << 1]; | ^