Avoid duplicate diagnostic in g++.dg/warn/Wuse-after-free3.C
authorRichard Biener <rguenther@suse.de>
Wed, 15 Mar 2023 13:48:57 +0000 (14:48 +0100)
committerRichard Biener <rguenther@suse.de>
Wed, 15 Mar 2023 14:30:49 +0000 (15:30 +0100)
commitdc35778a4be9dc4b936b8f0943ce04fb5f5ce810
tree9102444cb84bc91bfadeba0563b17a1bf44b509f
parent40c1352c5a4530350012d6a922435cf491663daa
Avoid duplicate diagnostic in g++.dg/warn/Wuse-after-free3.C

We are diagnosing

  operator delete (this_3(D));
  A::f (this_3(D));
  *this_3(D) ={v} CLOBBER;

where the CLOBBER appears at the end of the DTOR for C++11 and later.
The following avoids this by simply never diagnosing clobbers as
use-after-free.

* gimple-ssa-warn-access.cc (pass_waccess::check_pointer_uses):
Do not diagnose clobbers.

* g++.dg/warn/Wuse-after-free3.C: Remove expected duplicate
diagnostic.
gcc/gimple-ssa-warn-access.cc
gcc/testsuite/g++.dg/warn/Wuse-after-free3.C