24 lines
567 B
C++
24 lines
567 B
C++
|
// PR target/29487
|
||
|
// { dg-do run { xfail { hppa*-*-hpux* && { ! hppa*64*-*-* } } } }
|
||
|
// { dg-require-weak-override "" }
|
||
|
// { dg-additional-sources "weak1-a.cc" }
|
||
|
// { dg-options "-O2" }
|
||
|
|
||
|
extern __attribute__((weak))
|
||
|
void f() {
|
||
|
}
|
||
|
|
||
|
int main () {
|
||
|
try {
|
||
|
f();
|
||
|
return 1;
|
||
|
} catch (int i) {
|
||
|
/* Although the implementation of f in this file does not throw
|
||
|
any exceptions, it is weak, and may therefore be replaced at
|
||
|
link time. Therefore, the compiler must not optimize away this
|
||
|
catch clause. */
|
||
|
if (i != 7)
|
||
|
return 2;
|
||
|
}
|
||
|
}
|