|  | // 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}} | 
|  | } |