Commit 37d48844 authored by Stefan Behnel's avatar Stefan Behnel

fix #682: compiler crash on auto_cpdef redefinition

parent 350afcaf
...@@ -1399,7 +1399,8 @@ class AlignFunctionDefinitions(CythonTransform): ...@@ -1399,7 +1399,8 @@ class AlignFunctionDefinitions(CythonTransform):
return self.visit_CClassDefNode(node.as_cclass(), pxd_def) return self.visit_CClassDefNode(node.as_cclass(), pxd_def)
else: else:
error(node.pos, "'%s' redeclared" % node.name) error(node.pos, "'%s' redeclared" % node.name)
error(pxd_def.pos, "previous declaration here") if pxd_def.pos:
error(pxd_def.pos, "previous declaration here")
return None return None
else: else:
return node return node
...@@ -1420,7 +1421,8 @@ class AlignFunctionDefinitions(CythonTransform): ...@@ -1420,7 +1421,8 @@ class AlignFunctionDefinitions(CythonTransform):
if pxd_def: if pxd_def:
if not pxd_def.is_cfunction: if not pxd_def.is_cfunction:
error(node.pos, "'%s' redeclared" % node.name) error(node.pos, "'%s' redeclared" % node.name)
error(pxd_def.pos, "previous declaration here") if pxd_def.pos:
error(pxd_def.pos, "previous declaration here")
return None return None
node = node.as_cfunction(pxd_def) node = node.as_cfunction(pxd_def)
elif self.scope.is_module_scope and self.directives['auto_cpdef']: elif self.scope.is_module_scope and self.directives['auto_cpdef']:
......
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