blob: 2b4f09fefc7ed055706cec4789355b55e0652151 [file] [log] [blame]
/* { dg-do link } */
/* { dg-options "-O2" } */
extern void link_error (void);
void test(int x)
{
if ((x & ~x) != 0)
link_error ();
if ((~x & x) != 0)
link_error ();
if ((x ^ ~x) != -1)
link_error ();
if ((~x ^ x) != -1)
link_error ();
if ((x | ~x) != -1)
link_error ();
if ((~x | x) != -1)
link_error ();
if (x && !x)
link_error ();
if (!x && x)
link_error ();
if (!(x || !x))
link_error ();
if (!(!x || x))
link_error ();
}
int main()
{
test (0);
test (1);
test (-1);
return 0;
}