Commit 56d9591a authored by Stefan Behnel's avatar Stefan Behnel

build fix for the last self argument change

parent 7039048b
...@@ -2965,10 +2965,13 @@ class SimpleCallNode(CallNode): ...@@ -2965,10 +2965,13 @@ class SimpleCallNode(CallNode):
if arg.is_temp: if arg.is_temp:
some_args_in_temps = True some_args_in_temps = True
elif arg.type.is_pyobject and not env.nogil: elif arg.type.is_pyobject and not env.nogil:
if arg.is_name or (i == 0 and self.self is not None): if i == 0 and self.self is not None:
# names and a method's cloned "self" argument are ok # a method's cloned "self" argument is ok
pass
elif arg.is_name and arg.entry and arg.entry.is_local and not arg.entry.in_closure:
# plain local variables are ok
pass pass
elif arg.entry and (not arg.entry.is_local or arg.entry.in_closure): else:
# we do not safely own the argument's reference, # we do not safely own the argument's reference,
# but we must make sure it cannot be collected # but we must make sure it cannot be collected
# before we return from the function, so we create # before we return from the function, so we create
......
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