
Eric Niebler a écrit :
Certainly Concept_check or something like it has a big role to play in this. But I wouldn't know how to use Concept_check to verify that an expression template matches a grammar, for instance. It's not the whole story. Though perhaps I don't know enough about the concept_check library to see how it can apply to proto expressions and grammars. Suggestions?
The design of ConceptCheck doesn't allow to test at compile-time whether a set of types rightly model a concept. This is because concepts within ConceptCheck are defined as arbitrary statements, rather than expressions. We should redesign ConceptCheck for it to test expressions; then we could use the new extended SFINAE to test things. This however means we'd basically have to throw away and rewrite all the concept work that has already been done.