forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			29 lines
		
	
	
		
			397 B
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			397 B
		
	
	
	
		
			C++
		
	
	
	
| #ifdef AS_SYSTEM
 | |
| #pragma clang system_header
 | |
| 
 | |
| namespace system {
 | |
|   class A {
 | |
|   public:
 | |
|     A() {
 | |
|       foo(); // no-warning
 | |
|     }
 | |
| 
 | |
|     virtual int foo();
 | |
|   };
 | |
| }
 | |
| 
 | |
| #else
 | |
| 
 | |
| namespace header {
 | |
|   class A {
 | |
|   public:
 | |
|     A() {
 | |
|       foo(); // expected-warning{{Call virtual functions during construction or destruction will never go to a more derived class}}
 | |
|     }
 | |
| 
 | |
|     virtual int foo();
 | |
|   };
 | |
| }
 | |
| 
 | |
| #endif
 |