forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			17 lines
		
	
	
		
			548 B
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			17 lines
		
	
	
		
			548 B
		
	
	
	
		
			C++
		
	
	
	
// RUN: %clang_cc1 -std=c++11 -fsyntax-only -verify %s
 | 
						|
 | 
						|
class Base {
 | 
						|
public:
 | 
						|
  [[clang::not_tail_called]] virtual int foo1(); // expected-error {{'not_tail_called' attribute cannot be applied to virtual functions}}
 | 
						|
  virtual int foo2();
 | 
						|
  [[clang::not_tail_called]] int foo3();
 | 
						|
  virtual ~Base() {}
 | 
						|
};
 | 
						|
 | 
						|
class Derived1 : public Base {
 | 
						|
public:
 | 
						|
  int foo1() override;
 | 
						|
  [[clang::not_tail_called]] int foo2() override; // expected-error {{'not_tail_called' attribute cannot be applied to virtual functions}}
 | 
						|
  [[clang::not_tail_called]] int foo4();
 | 
						|
};
 |