int lsr_to_asr24(int x) | |
{ | |
return ((signed char)(((unsigned)x) >> 24)) == (x >> 24); | |
} | |
struct s { | |
int :30; | |
signed int f:2; | |
}; | |
int lsr_to_asr30(int a) | |
{ | |
union { | |
int i; | |
struct s s; | |
} u = { .i = a }; | |
return u.s.f == (a >> 30); | |
} | |
/* | |
* check-name: lsr-to-asr | |
* check-command: test-linearize -Wno-decl $file | |
* | |
* check-output-ignore | |
* check-output-returns: 1 | |
*/ |