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 vc { true };
      5 
      6 template<typename T>
      7 struct B { typedef bool Boolean; };
      8 
      9 template<int N>
     10 B<void>::Boolean concept vctb(!0);
     11 
     12 template<typename T>
     13 concept const bool vctc { true }; // expected-error {{declared type of variable concept must be 'bool'}}
     14 
     15 template<typename T>
     16 concept int vcti { 5 }; // expected-error {{declared type of variable concept must be 'bool'}}
     17 
     18 template<typename T>
     19 concept float vctf { 5.5 }; // expected-error {{declared type of variable concept must be 'bool'}}
     20 
     21 template<typename T>
     22 concept auto vcta { true }; // expected-error {{declared type of variable concept must be 'bool'}}
     23 
     24 template<typename T>
     25 concept decltype(auto) vctd { true }; // expected-error {{declared type of variable concept must be 'bool'}}
     26