1d54186acSChandler Carruth // RUN: %clang_cc1 -fsyntax-only -verify %s
2d54186acSChandler Carruth //
3d54186acSChandler Carruth // The whole point of this test is to verify certain diagnostics work in the
4d54186acSChandler Carruth // absence of namespace 'std'.
5d54186acSChandler Carruth 
6d54186acSChandler Carruth namespace PR10053 {
7d54186acSChandler Carruth   namespace ns {
8d54186acSChandler Carruth     struct Data {};
9d54186acSChandler Carruth   }
10d54186acSChandler Carruth 
11d54186acSChandler Carruth   template<typename T> struct A {
12d54186acSChandler Carruth     T t;
APR10053::A13d54186acSChandler Carruth     A() {
14*0b16695dSJay Foad       f(t); // expected-error {{call to function 'f' that is neither visible in the template definition nor found by argument-dependent lookup}}
15d54186acSChandler Carruth     }
16d54186acSChandler Carruth   };
17d54186acSChandler Carruth 
18d54186acSChandler Carruth   void f(ns::Data); // expected-note {{in namespace 'PR10053::ns'}}
19d54186acSChandler Carruth 
20d54186acSChandler Carruth   A<ns::Data> a; // expected-note {{in instantiation of member function}}
21d54186acSChandler Carruth }
22