2 /* { dg-options "-O3 -std=c++11" } */
5 extern "C" int printf(const char *fmt, ...);
6 extern "C" void abort(void);
9 enum _Value { Left, Right, Invalid };
11 constexpr Side() : _value(Invalid) {}
12 constexpr Side(_Value value) : _value(value) {}
13 operator _Value() const { return (_Value)_value; }
21 void adjust(Side side, bool final);
27 adjust(Side::Invalid, false);
30 static void __attribute__((noinline))
31 check (int v, int final)
38 __attribute__((noinline))
39 void A::adjust(Side side, bool final)
41 check ((int)side, final);
44 void A::move(Side side)