shiftopt-1.c

来自「用于进行gcc测试」· C语言 代码 · 共 74 行

C
74
字号
/* Copyright (C) 2002  Free Software Foundation   Check that constant folding of shift operations is working.   Roger Sayle, 10th October 2002.  */extern void abort (void);extern void link_error (void);voidutest (unsigned int x){  if (x >> 0 != x)    link_error ();  if (x << 0 != x)    link_error ();  if (0 << x != 0)    link_error ();  if (0 >> x != 0)    link_error ();  if (-1 >> x != -1)    link_error ();  if (~0 >> x != ~0)    link_error ();}voidstest (int x){  if (x >> 0 != x)    link_error ();  if (x << 0 != x)    link_error ();  if (0 << x != 0)    link_error ();  if (0 >> x != 0)    link_error ();  if (-1 >> x != -1)    link_error ();  if (~0 >> x != ~0)    link_error ();}intmain (){  utest(9);  utest(0);  stest(9);  stest(0);  return 0;}#ifndef __OPTIMIZE__voidlink_error (){  abort ();}#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?