URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 301 |
Rev 338 |
// { dg-do "run" }
|
// { dg-do "run" }
|
// { dg-options "-std=gnu++0x" }
|
// { dg-options "-std=gnu++0x" }
|
struct A {};
|
struct A {};
|
struct B {};
|
struct B {};
|
struct C {};
|
struct C {};
|
|
|
template void f(int idx) throw(Exceptions...) {
|
template void f(int idx) throw(Exceptions...) {
|
if (idx == 0) throw A();
|
if (idx == 0) throw A();
|
else if (idx == 1) throw B();
|
else if (idx == 1) throw B();
|
else if (idx == 2) throw C();
|
else if (idx == 2) throw C();
|
}
|
}
|
|
|
extern "C" void abort();
|
extern "C" void abort();
|
|
|
int main()
|
int main()
|
{
|
{
|
try {
|
try {
|
f(0);
|
f(0);
|
abort();
|
abort();
|
} catch (A) {
|
} catch (A) {
|
}
|
}
|
try {
|
try {
|
f(1);
|
f(1);
|
abort();
|
abort();
|
} catch (B) {
|
} catch (B) {
|
}
|
}
|
try {
|
try {
|
f(2);
|
f(2);
|
abort();
|
abort();
|
} catch (C) {
|
} catch (C) {
|
}
|
}
|
return 0;
|
return 0;
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.