https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91415
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org, | |jason at gcc dot gnu.org, | |mpolacek at gcc dot gnu.org --- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> --- So shall we emit no warnings with -std=c++17 -Wsequence-point on: struct S { int a[10]; }; void foo (int i, int (&x)[10][10], int y[10], S z[10], S *w[10]) { int b = x[i++][i++]; int c = i++ << i++; int d = i++ >> i++; int e = i++ && i++; int f = i++ ? i++ : i++; int g = (i++, i++); int h = z[i++].a[i++]; int j = w[i++]->a[i++]; y[i++] = y[i++]; } and warnings on 6 lines for -std=c++14? Right now we emit warnings on those 6 lines in both standard modes. clang 7 does the same, clang 9 emits them just on <<, >> and assignment. + add a testcase for .* and ->* too, what else?