// RUN: %clang_cc1 -std=c++14 -fconcepts-ts -x c++ -verify %s template<typename T> concept bool vc { true }; template<typename T> struct B { typedef bool Boolean; }; template<int N> B<void>::Boolean concept vctb(!0); template<typename T> concept const bool vctc { true }; // expected-error {{declared type of variable concept must be 'bool'}} template<typename T> concept int vcti { 5 }; // expected-error {{declared type of variable concept must be 'bool'}} template<typename T> concept float vctf { 5.5 }; // expected-error {{declared type of variable concept must be 'bool'}} template<typename T> concept auto vcta { true }; // expected-error {{declared type of variable concept must be 'bool'}} template<typename T> concept decltype(auto) vctd { true }; // expected-error {{declared type of variable concept must be 'bool'}}