// RUN: %clang_cc1 -fsyntax-only -verify %s template struct A { typedef int iterator; // expected-note{{declared here}} }; template void f() { class A ::iterator foo; // expected-error{{elaborated type refers to a typedef}} } void g() { f(); // expected-note{{in instantiation of function template}} }