// NonTemplateParmDecls should only print one default fwd decl, i.e it should // omit the inheritant default arguments. template struct __attribute__((type_visibility("default"))) extent; template struct extent{ }; // The same holds for TemplateParmDecls. template class Foo {}; template class Foo; namespace M { namespace N { template T function(T t) { return t; } class A{}; templateclass B : public A {}; class C :public B {}; } void FunctionWithDefaultArg(int x=0) { } } namespace stdtest { class istream{}; extern istream cin; template class vector{}; templateclass tuple{}; template struct conditional { typedef T type; }; template struct conditional { typedef F type; }; template struct enable_if {}; template struct enable_if { typedef T type; }; }