//#include #include #include //#define print(expr) printf("%s ==> %s\n", #expr, expr) // not all the compilers can handle an incomplete class type here. struct X {}; int main() { using namespace boost::python::detail; #if 0 // not yet supported assert(is_reference_to_function::value); assert(!is_reference_to_function::value); #endif assert(!is_pointer_to_function::value); assert(is_pointer_to_function::value); assert(is_reference_to_pointer::value); assert(is_reference_to_pointer::value); assert(is_reference_to_pointer::value); assert(is_reference_to_pointer::value); assert(!is_reference_to_pointer::value); assert(!is_reference_to_pointer::value); assert(!is_reference_to_pointer::value); assert(!is_reference_to_const::value); assert(is_reference_to_const::value); assert(!is_reference_to_const::value); assert(is_reference_to_const::value); assert(!is_reference_to_const::value); assert(!is_reference_to_const::value); assert(!is_reference_to_const::value); assert(is_reference_to_non_const::value); assert(!is_reference_to_non_const::value); assert(is_reference_to_non_const::value); assert(!is_reference_to_non_const::value); assert(!is_reference_to_non_const::value); assert(!is_reference_to_non_const::value); assert(!is_reference_to_non_const::value); assert(!is_reference_to_volatile::value); assert(!is_reference_to_volatile::value); assert(is_reference_to_volatile::value); assert(is_reference_to_volatile::value); assert(!is_reference_to_volatile::value); assert(!is_reference_to_volatile::value); assert(!is_reference_to_volatile::value); assert(!is_reference_to_class::value); assert(!is_reference_to_class::value); assert(!is_reference_to_class::value); assert(!is_reference_to_class::value); assert(is_reference_to_class::value); assert(is_reference_to_class::value); assert(is_reference_to_class::value); assert(is_reference_to_class::value); assert(!is_pointer_to_class::value); assert(!is_pointer_to_class::value); assert(!is_pointer_to_class::value); assert(!is_pointer_to_class::value); assert(!is_pointer_to_class::value); assert(is_pointer_to_class::value); assert(is_pointer_to_class::value); assert(is_pointer_to_class::value); assert(is_pointer_to_class::value); return 0; }