You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
17 lines
560 B
17 lines
560 B
7 months ago
|
// RUN: %clang_cc1 -fsyntax-only %s -verify
|
||
|
|
||
|
enum A { A1, A2, A3 };
|
||
|
void test() {
|
||
|
A a;
|
||
|
a++; // expected-error{{cannot increment expression of enum type 'A'}}
|
||
|
a--; // expected-error{{cannot decrement expression of enum type 'A'}}
|
||
|
++a; // expected-error{{cannot increment expression of enum type 'A'}}
|
||
|
--a; // expected-error{{cannot decrement expression of enum type 'A'}}
|
||
|
}
|
||
|
|
||
|
enum B {B1, B2};
|
||
|
inline B &operator++ (B &b) { b = B((int)b+1); return b; }
|
||
|
inline B operator++ (B &b, int) { B ret = b; ++b; return b; }
|
||
|
|
||
|
void foo(enum B b) { ++b; b++; }
|