Looking at the GNU g++ 4.8.4 type_traits header code I've found the definition for the std::is_function template. It includes some template specializations such as this:
template<typename _Res, typename... _ArgTypes>
struct is_function<_Res(_ArgTypes...) const>
: public true_type { };
Specializations for volatile and const volatile functions are also there.
It is known that only member functions can be declared cv-qualified. So what do these specializations match? Is this a GNU extension?