Commit 5e2f170b authored by gsamain's avatar gsamain Committed by Xavier Thompson

Fix del on cypclass

parent 60c986f1
......@@ -6272,7 +6272,7 @@ class DelStatNode(StatNode):
if arg.type.is_pyobject or (arg.is_name and arg.type.is_memoryviewslice):
if arg.is_name and arg.entry.is_cglobal:
error(arg.pos, "Deletion of global C variable")
elif arg.type.is_ptr and arg.type.base_type.is_cpp_class:
elif arg.type.is_ptr and arg.type.base_type.is_cpp_class or arg.type.is_cyp_class:
self.cpp_check(env)
elif arg.type.is_cpp_class:
error(arg.pos, "Deletion of non-heap C++ object")
......@@ -6302,7 +6302,9 @@ class DelStatNode(StatNode):
arg.generate_evaluation_code(code)
code.putln("delete %s;" % arg.result())
arg.generate_disposal_code(code)
# else error reported earlier
elif arg.type.is_cyp_class:
code.putln("Cy_DECREF(%s);" % arg.result())
# else error reported earlier
def annotate(self, code):
for arg in self.args:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment