/* { dg-do compile } */ | |
/* { dg-options "-O2" } */ | |
__extension__ typedef __SIZE_TYPE__ size_t; | |
typedef unsigned char uint8_t; | |
typedef unsigned short int uint16_t; | |
typedef unsigned long long int uint64_t; | |
struct magic { | |
uint8_t mask_op; | |
union { | |
uint64_t _mask; | |
} _u; | |
union VALUETYPE { | |
uint16_t h; | |
} value; | |
}; | |
void cvt_16(union VALUETYPE *p, const struct magic *m) | |
{ | |
if (m->_u._mask) | |
p->h %= (uint16_t) m->_u._mask; | |
} |