forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			23 lines
		
	
	
		
			473 B
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			473 B
		
	
	
	
		
			C++
		
	
	
	
| // RUN: %clang -emit-llvm -S -o %t1.ll -x c++ - < %s
 | |
| // RUN: %clang -fno-delayed-template-parsing -emit-ast -o %t.ast %s
 | |
| // RUN: %clang -emit-llvm -S -o %t2.ll -x ast - < %t.ast
 | |
| // RUN: diff %t1.ll %t2.ll
 | |
| 
 | |
| // http://llvm.org/bugs/show_bug.cgi?id=15377
 | |
| template<typename T>
 | |
| struct S {
 | |
|     T *mf();
 | |
| };
 | |
| template<typename T>
 | |
| T *S<T>::mf() {
 | |
|     // warning: control reaches end of non-void function [-Wreturn-type]
 | |
| }
 | |
| 
 | |
| void f() {
 | |
|     S<int>().mf();
 | |
| }
 | |
| 
 | |
| int main() {
 | |
|   return 0;
 | |
| }
 |