Fixes PR13413, -Wunused-private-field now warns on unused fields initialized to NULL.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160541
91177308-0d34-0410-b5e6-
96231b3b80d8
return Visit(E->getSubExpr());
}
bool VisitUnaryOperator(const UnaryOperator *E) { return Visit(E->getSubExpr()); }
+ bool VisitGNUNullExpr(const GNUNullExpr *E) { return false; }
+ bool VisitCXXBoolLiteralExpr(const CXXBoolLiteralExpr *E) { return false; }
+ bool VisitCXXThisExpr(const CXXThisExpr *E) { return false; }
+ bool VisitCXXNullPtrLiteralExpr(const CXXNullPtrLiteralExpr *E) {
+ return false;
+ }
// Has side effects if any element does.
bool VisitInitListExpr(const InitListExpr *E) {
[NSString string];
}
}
- ~foo(){ s; }
+ ~foo(){ }
private:
foo(foo const &);
foo &operator=(foo const &);
unsigned char Data[8];
};
} // namespace anonymous_structs_unions
+
+namespace pr13413 {
+class A {
+ A() : p_(__null), b_(false), a_(this), p2_(nullptr) {}
+ void* p_; // expected-warning{{private field 'p_' is not used}}
+ bool b_; // expected-warning{{private field 'b_' is not used}}
+ A* a_; // expected-warning{{private field 'a_' is not used}}
+ void* p2_; // expected-warning{{private field 'p2_' is not used}}
+};
+}