https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69850
Bug ID: 69850
Summary: [6 Regression] unnecessary -Wnonnull-compare warning
Product: gcc
Version: 6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: trippels at gcc dot gnu.org
Target Milestone: ---
trippels@gcc2-power8 status % cat cmp_set.ii
class shared_count {
public:
~shared_count() { delete this; }
};
class A {
shared_count pn;
};
class B {
public:
B(bool);
A m_message;
};
void fn1(B) { fn1(0); }
trippels@gcc2-power8 status % g++ -Wall -O2 -c cmp_set.ii
cmp_set.ii: In destructor ‘shared_count::~shared_count()’:
cmp_set.ii:3:32: warning: nonnull argument ‘this’ compared to NULL
[-Wnonnull-compare]
~shared_count() { delete this; }
^