pr16790-1.c

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

C
42
字号
/* PR middle-end/16790.  */extern void abort ();static void test1(unsigned int u1){  unsigned int y_final_1;  signed short y_middle;  unsigned int y_final_2;  y_final_1 = (unsigned int)( (signed short)(u1 * 2) * 3 );  y_middle  =                 (signed short)(u1 * 2);  y_final_2 = (unsigned int)( y_middle * 3 );  if (y_final_1 != y_final_2)    abort ();}static void test2(unsigned int u1){  unsigned int y_final_1;  signed short y_middle;  unsigned int y_final_2;  y_final_1 = (unsigned int)( (signed short)(u1 << 1) * 3 );  y_middle  =                 (signed short)(u1 << 1);  y_final_2 = (unsigned int)( y_middle * 3 );  if (y_final_1 != y_final_2)    abort ();}int main(){  test1(0x4000U);  test2(0x4000U);  return 0;}

⌨️ 快捷键说明

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