diff --git a/mindspore/ccsrc/vm/backend.cc b/mindspore/ccsrc/vm/backend.cc index f9fc225b3f..8c587a6227 100644 --- a/mindspore/ccsrc/vm/backend.cc +++ b/mindspore/ccsrc/vm/backend.cc @@ -104,9 +104,8 @@ void PushInputTensor(const BaseRef &arg, std::vector *inputs) auto value_tuple = value->cast(); MS_EXCEPTION_IF_NULL(value_tuple); auto tuple_value = value_tuple->value(); - for (const auto &v : tuple_value) { - PushInputTensor(v, inputs); - } + (void)std::transform(tuple_value.begin(), tuple_value.end(), std::back_inserter(*inputs), + [](const ValuePtr &v) { return v->cast(); }); } else if (value->isa()) { tensor::TensorPtr scalar_tensor = ScalarToTensor(value->cast()); inputs->push_back(scalar_tensor);