diff --git a/cpp/cmake_modules/SetupCxxFlags.cmake b/cpp/cmake_modules/SetupCxxFlags.cmake index fdb28b540e2d2..16882d1c66505 100644 --- a/cpp/cmake_modules/SetupCxxFlags.cmake +++ b/cpp/cmake_modules/SetupCxxFlags.cmake @@ -318,6 +318,7 @@ if("${BUILD_WARNING_LEVEL}" STREQUAL "CHECKIN") set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -Wdate-time") set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -Wimplicit-fallthrough") string(APPEND CXX_ONLY_FLAGS " -Wredundant-move") + string(APPEND CXX_ONLY_FLAGS " -Wself-move") set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -Wunused-result") elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Intel" OR CMAKE_CXX_COMPILER_ID STREQUAL "IntelLLVM") diff --git a/cpp/src/arrow/util/small_vector_test.cc b/cpp/src/arrow/util/small_vector_test.cc index f9ec5fedfeaf8..9da2963b1b15c 100644 --- a/cpp/src/arrow/util/small_vector_test.cc +++ b/cpp/src/arrow/util/small_vector_test.cc @@ -412,11 +412,6 @@ class TestSmallStaticVector : public ::testing::Test { IntVectorType moved_moved_ints = std::move(moved_ints); ASSERT_EQ(moved_moved_ints.size(), 5); EXPECT_THAT(moved_moved_ints, ElementsAre(4, 5, 6, 7, 8)); - - // Move into itself - moved_moved_ints = std::move(moved_moved_ints); - ASSERT_EQ(moved_moved_ints.size(), 5); - EXPECT_THAT(moved_moved_ints, ElementsAre(4, 5, 6, 7, 8)); } void TestMove() {