diff --git a/mace/kernels/unstack.h b/mace/kernels/unstack.h index 08e3d798b1d0718886ecd33d4f9af7c5d453f05b..82b5c467c69180366483672d13eb1e1c9c2a936f 100644 --- a/mace/kernels/unstack.h +++ b/mace/kernels/unstack.h @@ -40,14 +40,14 @@ struct UnstackFunctor { if (axis_ < 0) { axis_ += input->dim_size(); } - MACE_CHECK(outputs.size() == input_shape[axis_], + MACE_CHECK(static_cast(outputs.size()) == input_shape[axis_], "output size not equal input_shape[axis]"); std::vector output_shape = input_shape; output_shape.erase(output_shape.begin() + axis_); std::vector output_data(outputs.size(), nullptr); - for (size_t i = 0; i < input_shape[axis_]; ++i) { + for (index_t i = 0; i < input_shape[axis_]; ++i) { MACE_RETURN_IF_ERROR(outputs[i]->Resize(output_shape)); output_data[i] = outputs[i]->mutable_data(); } @@ -63,7 +63,7 @@ struct UnstackFunctor { for (index_t h = 0; h < high_dim_elem_size; ++h) { int input_idx = h * input_shape[axis_] * low_dim_elem_size; int output_idx = h * low_dim_elem_size; - for (size_t i = 0; i < input_shape[axis_]; ++i) { + for (index_t i = 0; i < input_shape[axis_]; ++i) { memcpy(output_data[i] + output_idx, input_data + input_idx, sizeof(T) * low_dim_elem_size); input_idx += low_dim_elem_size;