bitfld-4.c

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

C
22
字号
/* When comparisons of bit-fields to unsigned constants got shortened,   the shortened signed constant was wrongly marked as overflowing,   leading to a later integer_zerop failure and misoptimization.   Related to bug tree-optimization/16437 but shows the problem on   32-bit systems.  *//* Origin: Joseph Myers <jsm@polyomino.org.uk> */extern void abort (void);struct s { int a:12, b:20; };struct s x = { -123, -456 };intmain (void){  if (x.a != -123U || x.b != -456U)    abort ();  return 0;}

⌨️ 快捷键说明

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