static_analysis: Mark use-after-move tests
The pw_rpc and pw_thread tests validate the state of their objects after
a move operation. Tell the static analyzer to ignore these sections
where the use-after-move is intentional.
Change-Id: I684f32aeae4bfffc9f838cf7301a692142fd3b79
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/35880
Reviewed-by: Wyatt Hepler <hepler@google.com>
Commit-Queue: Prashanth Swaminathan <prashanthsw@google.com>
diff --git a/pw_rpc/base_server_writer_test.cc b/pw_rpc/base_server_writer_test.cc
index 06632ae..0e4ffe8 100644
--- a/pw_rpc/base_server_writer_test.cc
+++ b/pw_rpc/base_server_writer_test.cc
@@ -53,7 +53,9 @@
BaseServerWriter moved(context.get());
BaseServerWriter writer(std::move(moved));
+#ifndef __clang_analyzer__
EXPECT_FALSE(moved.open());
+#endif // ignore use-after-move
EXPECT_TRUE(writer.open());
}
diff --git a/pw_thread/thread_facade_test.cc b/pw_thread/thread_facade_test.cc
index c33c515..0e9cf68 100644
--- a/pw_thread/thread_facade_test.cc
+++ b/pw_thread/thread_facade_test.cc
@@ -130,7 +130,9 @@
thread_0 = std::move(thread_1);
EXPECT_NE(thread_0.get_id(), Id());
+#ifndef __clang_analyzer__
EXPECT_EQ(thread_1.get_id(), Id());
+#endif // ignore use-after-move
thread_0.detach();
EXPECT_EQ(thread_0.get_id(), Id());