interrogate: fix to allow pointers to forcetyped classes

This commit is contained in:
rdb 2016-12-07 23:04:15 +01:00
parent b217752e16
commit 32377cb618

View File

@ -6142,7 +6142,7 @@ pack_return_value(ostream &out, int indent_level, FunctionRemap *remap,
write_python_instance(out, indent_level, return_expr, owns_memory, itype, is_const); write_python_instance(out, indent_level, return_expr, owns_memory, itype, is_const);
} }
} else if (TypeManager::is_struct(orig_type->as_pointer_type()->_pointing_at)) { } else if (TypeManager::is_struct(orig_type->remove_pointer())) {
TypeIndex type_index = builder.get_type(TypeManager::unwrap(TypeManager::resolve_type(orig_type)),false); TypeIndex type_index = builder.get_type(TypeManager::unwrap(TypeManager::resolve_type(orig_type)),false);
const InterrogateType &itype = idb->get_type(type_index); const InterrogateType &itype = idb->get_type(type_index);
@ -6749,6 +6749,8 @@ is_cpp_type_legal(CPPType *in_ctype) {
return true; return true;
} else if (TypeManager::is_pointer_to_simple(type)) { } else if (TypeManager::is_pointer_to_simple(type)) {
return true; return true;
} else if (builder.in_forcetype(type->get_local_name(&parser))) {
return true;
} else if (TypeManager::is_exported(type)) { } else if (TypeManager::is_exported(type)) {
return true; return true;
} else if (TypeManager::is_pointer_to_PyObject(in_ctype)) { } else if (TypeManager::is_pointer_to_PyObject(in_ctype)) {