// RUN: %clang_cc1 -std=c++14 -fconcepts-ts -x c++ -verify %s template concept bool FCEI() { return true; } // expected-note {{previous declaration is here}} expected-note {{previous declaration is here}} template bool FCEI(); // expected-error {{function concept cannot be explicitly instantiated}} extern template bool FCEI(); // expected-error {{function concept cannot be explicitly instantiated}} template concept bool FCES() { return true; } // expected-note {{previous declaration is here}} template <> bool FCES() { return true; } // expected-error {{function concept cannot be explicitly specialized}} template concept bool VC { true }; // expected-note {{previous declaration is here}} expected-note {{previous declaration is here}} template bool VC; // expected-error {{variable concept cannot be explicitly instantiated}} extern template bool VC; // expected-error {{variable concept cannot be explicitly instantiated}} template concept bool VCES { true }; // expected-note {{previous declaration is here}} template <> bool VCES { true }; // expected-error {{variable concept cannot be explicitly specialized}} template concept bool VCPS { true }; // expected-note {{previous declaration is here}} template bool VCPS { true }; // expected-error {{variable concept cannot be partially specialized}}