27 lines
		
	
	
		
			647 B
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			647 B
		
	
	
	
		
			C++
		
	
	
	
| // RUN: %clang_cc1 -fsyntax-only -verify -std=c++1z %s
 | |
| 
 | |
| namespace [[deprecated]] {}  // expected-warning {{'deprecated' attribute on anonymous namespace ignored}}
 | |
| 
 | |
| namespace [[deprecated]] N { // expected-note 4{{'N' has been explicitly marked deprecated here}}
 | |
|   int X;
 | |
|   int Y = X; // Ok
 | |
|   int f();
 | |
| }
 | |
| 
 | |
| int N::f() { // Ok
 | |
|   return Y; // Ok
 | |
| }
 | |
| 
 | |
| void f() {
 | |
|   int Y = N::f(); // expected-warning {{'N' is deprecated}}
 | |
|   using N::X; // expected-warning {{'N' is deprecated}}
 | |
|   int Z = X; //Ok
 | |
| }
 | |
| 
 | |
| void g() {
 | |
|   using namespace N; // expected-warning {{'N' is deprecated}}
 | |
|   int Z = Y; // Ok
 | |
| }
 | |
| 
 | |
| namespace M = N; // expected-warning {{'N' is deprecated}}
 |