+++ /dev/null
-// Test whether exception specifier dependent on template parameter
-// is accepted during template decl processing.
-// { dg-do run }
-
-extern "C" void abort();
-
-class A {};
-
-template <class T>
-struct B
-{
- typedef A E;
-};
-
-template <class T>
-struct C
-{
- typedef B<T> D;
- typedef typename D::E E;
- void f() throw(E) { throw E(); }
-};
-
-int main()
-{
- int caught = 0;
- try
- {
- C<int> x;
- x.f();
- }
- catch (A)
- {
- ++caught;
- }
- if (caught != 1)
- abort ();
- return 0;
-}