Actually remove warning mentioned in last commit...
authorDag Sverre Seljebotn <dagss@student.matnat.uio.no>
Thu, 14 May 2009 13:28:13 +0000 (15:28 +0200)
committerDag Sverre Seljebotn <dagss@student.matnat.uio.no>
Thu, 14 May 2009 13:28:13 +0000 (15:28 +0200)
Cython/Compiler/ExprNodes.py

index ef0664037f7aba366bac0f4adaa15069650b1f9f..77bfd9049c92782da22582ecb407d4ea1398ee83 100644 (file)
@@ -3932,13 +3932,15 @@ class TypecastNode(NewTempExprNode):
                 self.result_ctype = py_object_type
                 self.operand = self.operand.coerce_to_pyobject(env)
             else:
-                warning(self.pos, "No conversion from %s to %s, python object pointer used." % (self.operand.type, self.type))
+                if not (self.operand.type.is_ptr and self.operand.type.base_type.is_void):
+                    warning(self.pos, "No conversion from %s to %s, python object pointer used." % (self.operand.type, self.type))
                 self.operand = self.operand.coerce_to_simple(env)
         elif from_py and not to_py:
             if self.type.from_py_function:
                 self.operand = self.operand.coerce_to(self.type, env)
-            elif self.type.is_ptr and not self.type.base_type.is_void:
-                error(self.pos, "Python objects can only be cast to void*")
+            elif self.type.is_ptr:
+                if not self.type.base_type.is_void:
+                    error(self.pos, "Python objects can only be cast to void*")
             else:
                 warning(self.pos, "No conversion from %s to %s, python object pointer used." % (self.type, self.operand.type))
         elif from_py and to_py: