[clang-tools-extra] [libc] clang-tidy: readability-redundant-smartptr-get does not remove -> (#97964) (PR #98757)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Jul 22 13:47:44 PDT 2024
================
@@ -235,3 +276,13 @@ void Negative() {
if (MACRO(x) == nullptr)
;
}
+
+void test_redundant_get() {
+ std::vector<std::shared_ptr<int>> v;
+ auto f = [](int) {};
+ for (auto i = v.begin(); i != v.end(); ++i) {
+ f(*i->get());
----------------
akshaykumars614 wrote:
struct Inner {
int a;
int *getValue() { return &a; }
};
struct Example {
Inner inner;
Inner* get() { return &inner; }
int *getValue() { return inner.getValue(); }
};
void test_redundant_get() {
std::vector<std::shared_ptr<int>> v;
auto f = [](int) {};
for (auto i = v.begin(); i != v.end(); ++i) {
f(**i);
}
}
void test_redundant_get_with_member() {
std::vector<std::shared_ptr<Example>> v;
auto f = [](int) {};
for (auto i = v.begin(); i != v.end(); ++i) {
f(*i->get()->getValue()); // No redundancy here
}
}
but cannot reproduce the redundant get() warning
https://github.com/llvm/llvm-project/pull/98757
More information about the cfe-commits
mailing list