diff --git a/src/operator/tensor/matrix_op-inl.h b/src/operator/tensor/matrix_op-inl.h index bfee083ca1a6..e375d640536a 100644 --- a/src/operator/tensor/matrix_op-inl.h +++ b/src/operator/tensor/matrix_op-inl.h @@ -992,7 +992,7 @@ void SliceAssignOpForward(const nnvm::NodeAttrs& attrs, } struct SliceAssignScalarParam : public dmlc::Parameter { - real_t scalar; + double scalar; nnvm::Tuple> begin, end; nnvm::Tuple> step; DMLC_DECLARE_PARAMETER(SliceAssignScalarParam) { diff --git a/tests/python/unittest/test_ndarray.py b/tests/python/unittest/test_ndarray.py index 0044ae38f5e9..128dfa61793a 100644 --- a/tests/python/unittest/test_ndarray.py +++ b/tests/python/unittest/test_ndarray.py @@ -1355,6 +1355,17 @@ def test_assign_float_value_to_ndarray(): b[0] = a[0] assert same(a, b.asnumpy()) +def test_assign_large_int_to_ndarray(): + """Test case from https://github.com/apache/incubator-mxnet/issues/11639""" + a = mx.nd.zeros((4, 1), dtype=np.int32) + a[1,0] = int(16800001) + a[2,0] = int(16800002) + b = a.asnumpy() + assert same(b[1,0], 16800001) + a = a-1 + b = a.asnumpy() + assert same(b[1,0], 16800000) + @with_seed() def test_assign_a_row_to_ndarray(): """Test case from https://github.com/apache/incubator-mxnet/issues/9976"""