forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			34 lines
		
	
	
		
			528 B
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			528 B
		
	
	
	
		
			C++
		
	
	
	
| // RUN: %clang_cc1 -std=c++11 -verify %s -Wunused-parameter
 | |
| 
 | |
| // PR19303 : Make sure we don't get a unused expression warning for deleted and
 | |
| // defaulted functions
 | |
| 
 | |
| // expected-no-diagnostics
 | |
| 
 | |
| class A {
 | |
| public:
 | |
|   int x;
 | |
|   A() = default;
 | |
|   ~A() = default;
 | |
|   A(const A &other) = delete;
 | |
| 
 | |
|   template <typename T>
 | |
|   void SetX(T x) {
 | |
|     this->x = x;
 | |
|   };
 | |
| 
 | |
|   void SetX1(int x);
 | |
| };
 | |
| 
 | |
| template <>
 | |
| void A::SetX(A x) = delete;
 | |
| 
 | |
| class B {
 | |
| public:
 | |
|   B() = default;
 | |
|   ~B() = default;
 | |
|   B(const B &other);
 | |
| };
 | |
| 
 | |
| B::B(const B &other) = default;
 |