view gcc/testsuite/g++.dg/cpp1z/fold6.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
line wrap: on
line source

// Test that we reject a fold-expression with an LHS that is not a
// cast-expression.

// { dg-do compile { target c++17 } }

int i;

template <int... Is>
void f()
{
  (i ? i : Is + ...);		// { dg-error "" }
  (i + Is + ...);		// { dg-error "" }
  (i - Is + ...);		// { dg-error "" }
  (i * Is + ...);		// { dg-error "" }
  (i / Is + ...);		// { dg-error "" }
  (i % Is + ...);		// { dg-error "" }
  (i ^ Is + ...);		// { dg-error "" }
  (i | Is + ...);		// { dg-error "" }
  (i & Is + ...);		// { dg-error "" }
  (i << Is + ...);		// { dg-error "" }
  (i >> Is + ...);		// { dg-error "" }
  (i = Is + ...);		// { dg-error "" }
  (i += Is + ...);		// { dg-error "" }
  (i -= Is + ...);		// { dg-error "" }
  (i *= Is + ...);		// { dg-error "" }
  (i /= Is + ...);		// { dg-error "" }
  (i %= Is + ...);		// { dg-error "" }
  (i ^= Is + ...);		// { dg-error "" }
  (i |= Is + ...);		// { dg-error "" }
  (i &= Is + ...);		// { dg-error "" }
  (i <<= Is + ...);		// { dg-error "" }
  (i >>= Is + ...);		// { dg-error "" }
  (i == Is + ...);		// { dg-error "" }
  (i != Is + ...);		// { dg-error "" }
  (i < Is + ...);		// { dg-error "" }
  (i > Is + ...);		// { dg-error "" }
  (i <= Is + ...);		// { dg-error "" }
  (i >= Is + ...);		// { dg-error "" }
  (i && Is + ...);		// { dg-error "" }
  (i || Is + ...);		// { dg-error "" }
  (i , Is + ...);		// { dg-error "" }
}