forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			21 lines
		
	
	
		
			673 B
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			673 B
		
	
	
	
		
			Plaintext
		
	
	
	
// RUN: %clang_cc1 -std=c++11 -fsyntax-only -fno-cuda-host-device-constexpr -verify %s
 | 
						|
// RUN: %clang_cc1 -std=c++11 -fsyntax-only -fno-cuda-host-device-constexpr -fcuda-is-device -verify %s
 | 
						|
 | 
						|
#include "Inputs/cuda.h"
 | 
						|
 | 
						|
// Check that, with -fno-cuda-host-device-constexpr, constexpr functions are
 | 
						|
// host-only, and __device__ constexpr functions are still device-only.
 | 
						|
 | 
						|
constexpr int f() { return 0; } // expected-note {{not viable}}
 | 
						|
__device__ constexpr int g() { return 0; } // expected-note {{not viable}}
 | 
						|
 | 
						|
void __device__ foo() {
 | 
						|
  f(); // expected-error {{no matching function}}
 | 
						|
  g();
 | 
						|
}
 | 
						|
 | 
						|
void __host__ foo() {
 | 
						|
  f();
 | 
						|
  g(); // expected-error {{no matching function}}
 | 
						|
}
 |