diff --git a/unit_tests/data/Test_Tensor.cpp b/unit_tests/data/Test_Tensor.cpp
index c18b005365ceefbd60869e1ef7a2908f9a4a61d9..655fd725e9d7d913d24c6552571ae3b91e3605b4 100644
--- a/unit_tests/data/Test_Tensor.cpp
+++ b/unit_tests/data/Test_Tensor.cpp
@@ -307,7 +307,7 @@ TEST_CASE("[core/data] Tensor(other)", "[Tensor][extract][zeros][print]") {
             const std::size_t dim1 = dimsDist(gen) + 1;
             const std::size_t dim2 = dimsDist(gen) + 1;
             std::vector<std::size_t> dims = {dim0, dim1, dim2};
-            int array0[dim0*dim1*dim2];
+            std::unique_ptr<int[]> array0(new int[dim0*dim1*dim2]);
             for (std::size_t i = 0; i < dim0; ++i) {
                 for (std::size_t j = 0; j < dim1; ++j) {
                     for (std::size_t k = 0; k < dim2; ++k) {
@@ -323,7 +323,7 @@ TEST_CASE("[core/data] Tensor(other)", "[Tensor][extract][zeros][print]") {
             Tensor y1;
             Tensor y2;
             Tensor y3;
-            x.getImpl()->setRawPtr(&array0, dim0*dim1*dim2);
+            x.getImpl()->setRawPtr(array0.get(), dim0*dim1*dim2);
             REQUIRE(x.isContiguous());
 
         ////////////////