PR c/64856
[official-gcc.git] / gcc / testsuite / gcc.dg / pr17844-1.c
blobd06bbb6d74a50bb6749a39bbc1f4c41e3144bd92
1 /* -fshort-enums should affect only the type with which an enum is
2 compatible, not the type of the enumeration constants which should
3 still be int. Bug 17844. */
4 /* Origin: Joseph Myers <jsm@polyomino.org.uk> */
5 /* { dg-do compile } */
6 /* { dg-options "-fshort-enums" } */
8 enum e { A, B };
10 enum e ev;
11 unsigned char uv;
12 enum e *ep = &uv;
13 unsigned char *up = &ev;
15 int i;
16 __typeof__(A) te;
17 int *ip = &te;
18 __typeof__(B) *tep = &i;
20 int x[((sizeof(A) == sizeof(int)) ? 1 : -1)];