http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56170
--- Comment #7 from Jonathan Wakely <redi at gcc dot gnu.org> 2013-02-02 13:30:09 UTC --- I think that could be useful, although as I don't know how many people still use the concept checks I'm inclined to say that adding static_assert checks in C++11 mode is more useful and can give shorter plain English errors, i.e. static_assert( __is_allocator_type<_Alloc>::value, "Template parameter 4 does not meet allocator requirements" ); Or maybe: static_assert( __assert_allocator_type<_Alloc>::value, "Template parameter 4 does not meet allocator requirements" ); where __assert_allocator_type contains its own static_asserts with more fine-grained checks for various aspects of the requirements.