• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // RUN: %clang_cc1 -std=c++11 -fsyntax-only -fno-cuda-host-device-constexpr -verify %s
2 // RUN: %clang_cc1 -std=c++11 -fsyntax-only -fno-cuda-host-device-constexpr -fcuda-is-device -verify %s
3 
4 #include "Inputs/cuda.h"
5 
6 // Check that, with -fno-cuda-host-device-constexpr, constexpr functions are
7 // host-only, and __device__ constexpr functions are still device-only.
8 
f()9 constexpr int f() { return 0; } // expected-note {{not viable}}
g()10 __device__ constexpr int g() { return 0; } // expected-note {{not viable}}
11 
foo()12 void __device__ foo() {
13   f(); // expected-error {{no matching function}}
14   g();
15 }
16 
foo()17 void __host__ foo() {
18   f();
19   g(); // expected-error {{no matching function}}
20 }
21