diff --git a/Cython/Compiler/PyrexTypes.py b/Cython/Compiler/PyrexTypes.py index 9acb1032a56300cbdbe05e7d7127e39caf698822..7cd57cefddb69f4823f79009fd80a1fefe276929 100644 --- a/Cython/Compiler/PyrexTypes.py +++ b/Cython/Compiler/PyrexTypes.py @@ -2842,7 +2842,7 @@ class CStructOrUnionType(CType): if self._convert_to_py_code is None: for member in self.scope.var_entries: - if not member.type.to_py_function or not member.type.create_to_py_utility_code(env): + if not member.type.to_py_function and not member.type.create_to_py_utility_code(env): self.to_py_function = None self._convert_to_py_code = False return False @@ -2860,7 +2860,7 @@ class CStructOrUnionType(CType): if self._convert_from_py_code is None: for member in self.scope.var_entries: - if (not member.type.from_py_function or not + if (not member.type.from_py_function and not member.type.create_from_py_utility_code(env)): self.from_py_function = None self._convert_from_py_code = False