Home | History | Annotate | Download | only in dcl.spec.concept
      1 // RUN:  %clang_cc1 -std=c++14 -fconcepts-ts -x c++ -verify %s
      2 
      3 template<typename T>
      4 concept bool fcpv(void) { return true; }
      5 
      6 template<typename T>
      7 concept bool fcpi(int i = 0) { return true; } // expected-error {{function concept cannot have any parameters}}
      8 
      9 template<typename... Ts>
     10 concept bool fcpp(Ts... ts) { return true; } // expected-error {{function concept cannot have any parameters}}
     11 
     12 template<typename T>
     13 concept bool fcpva(...) { return true; } // expected-error {{function concept cannot have any parameters}}
     14 
     15 template<typename T>
     16 concept const bool fcrtc() { return true; } // expected-error {{declared return type of function concept must be 'bool'}}
     17 
     18 template<typename T>
     19 concept int fcrti() { return 5; } // expected-error {{declared return type of function concept must be 'bool'}}
     20 
     21 template<typename T>
     22 concept float fcrtf() { return 5.5; } // expected-error {{declared return type of function concept must be 'bool'}}
     23 
     24 template<typename T>
     25 concept decltype(auto) fcrtd(void) { return true; } // expected-error {{declared return type of function concept must be 'bool'}}
     26