📄 20020411-1.c
字号:
/* PR c/6223 This testcase ICEd in internal check because a constant was not truncated for its mode. *//* { dg-do compile } *//* { dg-options "-O2" } *//* { dg-options "-O2 -march=i686" { target i?86-*-* } } */#if __INT_MAX__ > 32767typedef struct{ unsigned a : 16; unsigned b : 16; unsigned c : 5; unsigned d : 2; unsigned e : 1; unsigned f : 4; unsigned g : 1; unsigned h : 1; unsigned i : 1; unsigned j : 1;} T;inline voidfoo (T *x, unsigned int y){ if ((x->j = (y >= 0x100000))) y >>= 12; x->a = y; x->f = (y >> 16);}void __attribute__((noinline))bar (T *x){}voidbaz (unsigned int x, unsigned char y){ T t; foo (&t, x - 1); t.e = 1; t.c = y; t.g = 0; t.h = 0; t.i = (y & 0x40) != 0; if (x == 1) foo (&t, 1); bar (&t);}#endif /* __INT_MAX__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -