blob: e4590b39e495aa3df31886c54a217078cd0c5ef8 [file] [log] [blame]
#define bool _Bool
bool f(int a, bool c) __attribute__((noinline));
bool f(int a, bool c)
{
if (!a)
c = !c;
return c;
}
void checkf(int a, bool b)
{
bool c = f(a, b);
char d;
__builtin_memcpy (&d, &c, 1);
if ( d != (a==0)^b)
__builtin_abort();
}
int main(void)
{
checkf(0, 0);
checkf(0, 1);
checkf(1, 1);
checkf(1, 0);
return 0;
}