pr25654.c
来自「用于进行gcc测试」· C语言 代码 · 共 43 行
C
43 行
/* { dg-do run } *//* { dg-require-effective-target ilp32 } *//* { dg-options "-O2 -mpreferred-stack-boundary=2 -march=i686 -frename-registers" } */extern void abort (void) __attribute__((noreturn));struct wrapper {union setconflict{ short a[20]; int b[10];} a;};intmain (){ int sum = 0; { struct wrapper a; short *c; c = a.a.a; asm ("": "=r" (c):"0" (c)); *c = 0; asm ("": "=r" (c):"0" (c)); sum += *c; } { struct wrapper a; int *c; c = a.a.b; asm ("": "=r" (c):"0" (c)); *c = 1; asm ("": "=r" (c):"0" (c)); sum += *c; } if (sum != 1) abort(); return 0;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?