📄 pr22167.c
字号:
// Derived from PR22167, which failed on some RISC targets. The call to// foo() has two successors, one normal and one exceptional, and both// successors use &a[0] and x. Expressions involving &a[0] can be hoisted// before the call but those involving x cannot.// { dg-options "-Os" }// { dg-do run }int a[4];struct S { S() : x (0) {} ~S() { a[0] = x; } int x;};voidfoo (int *x){ if (*x == 1) throw 1; *x = 1;}intmain(){ S s; foo (&s.x); if (a[0] == s.x) a[0]++; return a[0];}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -