提交 673ee5f8 authored 作者: Frederic Bastien's avatar Frederic Bastien

fix problem with reusing the same variable for 2 things.

上级 1fae212a
...@@ -1346,17 +1346,17 @@ class _Maker(FunctionMaker): #inheritance buys a few helper functions ...@@ -1346,17 +1346,17 @@ class _Maker(FunctionMaker): #inheritance buys a few helper functions
# there is no aliasing only between shared variables. # there is no aliasing only between shared variables.
#import pdb;pdb.set_trace() #import pdb;pdb.set_trace()
assert len(inputs) == len(env.inputs) assert len(inputs) == len(env.inputs)
updated_env_inputs = [env_i for i, env_i in zip(inputs, env.inputs) if getattr(i, 'update', False)] updated_env_inputs = [env_i for ii, env_i in zip(inputs, env.inputs) if getattr(ii, 'update', False)]
for i in xrange(len(env.outputs)): for out_i in xrange(len(env.outputs)):
views_of_output_i = set() views_of_output_i = set()
view_tree_set(alias_root(env.outputs[i]), views_of_output_i) view_tree_set(alias_root(env.outputs[out_i]), views_of_output_i)
copied = False copied = False
# do not allow outputs to be aliased # do not allow outputs to be aliased
for j in xrange(i+1, len(env.outputs)): for j in xrange(out_i+1, len(env.outputs)):
if env.outputs[j] in views_of_output_i: if env.outputs[j] in views_of_output_i:
#import pdb;pdb.set_trace() #import pdb;pdb.set_trace()
env.change_input('output', i, deep_copy_op(env.outputs[i])) env.change_input('output', out_i, deep_copy_op(env.outputs[out_i]))
copied = True copied = True
break break
...@@ -1371,7 +1371,7 @@ class _Maker(FunctionMaker): #inheritance buys a few helper functions ...@@ -1371,7 +1371,7 @@ class _Maker(FunctionMaker): #inheritance buys a few helper functions
continue continue
if input_j in views_of_output_i: if input_j in views_of_output_i:
#import pdb;pdb.set_trace() #import pdb;pdb.set_trace()
env.change_input('output', i, deep_copy_op(env.outputs[i])) env.change_input('output', out_i, deep_copy_op(env.outputs[out_i]))
break break
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论