1 // RUN: %clang_cc1 -fsyntax-only -verify %s
2 // RUN: %clang_cc1 -fsyntax-only -verify -std=c++98 %s
3 // RUN: %clang_cc1 -fsyntax-only -verify -std=c++11 %s
4 
5 namespace std {
6   template<typename T> class vector { }; // expected-note{{candidate function (the implicit copy assignment operator) not viable}}
7 #if __cplusplus >= 201103L // C++11 or later
8   // expected-note@-2 {{candidate function (the implicit move assignment operator) not viable}}
9 #endif
10 }
11 
12 typedef int INT;
13 typedef float Real;
14 
test()15 void test() {
16   using namespace std;
17 
18   std::vector<INT> v1;
19   vector<Real> v2;
20   v1 = v2; // expected-error{{no viable overloaded '='}}
21 }
22