blob: 673427e6cb441fcece8b5e11cbdafd84280e2094 [file] [log] [blame]
// { dg-do assemble }
//
// Copyright (C) 2000 Free Software Foundation, Inc.
// Contributed by Nathan Sidwell 5 Sept 2000 <nathan@codesourcery.com>
// bug 73. We failed to compare explicit arguments for a TEMPLATE_ID_EXPR in a
// TYPENAME_TYPE.
struct Plus {
template <class T>
struct Sig { typedef int Third;};
};
template <class T>
struct Ethel {
typedef int WrappedType;
};
struct Fred {
template <class Q, class LA, class LB>
Ethel<typename Q::template Sig<typename LA::WrappedType>::Third> baz ();
template <class Z, class A, class B>
Ethel<typename Z::template Sig<A>::Third>
foo ( const Z&, const Ethel<A>&, const Ethel<B>&) const;
};
int main() {
Fred f;
Ethel<int> e;
Plus p;
f.foo (p, e, e);
return 0;
}