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?

Reply via email to