2018-11-28 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / gcc.dg / pr33667.c
blob676c4a46dac789af4d746a466a76900361cc76cd
1 /* { dg-do compile } */
2 /* { dg-options "-O2" } */
4 __extension__ typedef __SIZE_TYPE__ size_t;
5 typedef unsigned char uint8_t;
6 typedef unsigned short int uint16_t;
7 typedef unsigned long long int uint64_t;
8 struct magic {
9 uint8_t mask_op;
10 union {
11 uint64_t _mask;
12 } _u;
13 union VALUETYPE {
14 uint16_t h;
15 } value;
17 void cvt_16(union VALUETYPE *p, const struct magic *m)
19 if (m->_u._mask)
20 p->h %= (uint16_t) m->_u._mask;