]> git.ipfire.org Git - thirdparty/gcc.git/commit
Avoid -Wdangling-pointer for by-transparent-reference arguments [PR104436].
authorMartin Sebor <msebor@redhat.com>
Tue, 15 Mar 2022 00:23:08 +0000 (18:23 -0600)
committerMartin Sebor <msebor@redhat.com>
Tue, 15 Mar 2022 00:26:05 +0000 (18:26 -0600)
commit373a2dc2be0089ae59b61202a6023458aaaf63d8
treeba2525d1243cf0f228f83516b9fb74139f1f153d
parent510613e76c27e183b63350d35dc35d58a62749b1
Avoid -Wdangling-pointer for by-transparent-reference arguments [PR104436].

This change avoids -Wdangling-pointer for by-value arguments transformed
into by-transparent-reference.

Resolves:
PR middle-end/104436 - spurious -Wdangling-pointer assigning local address to a class passed by value

gcc/ChangeLog:

PR middle-end/104436
* gimple-ssa-warn-access.cc (pass_waccess::check_dangling_stores):
Check for warning suppression.  Avoid by-value arguments transformed
into by-transparent-reference.

gcc/testsuite/ChangeLog:

PR middle-end/104436
* c-c++-common/Wdangling-pointer-8.c: New test.
* g++.dg/warn/Wdangling-pointer-5.C: New test.
gcc/gimple-ssa-warn-access.cc
gcc/testsuite/c-c++-common/Wdangling-pointer-8.c [new file with mode: 0644]
gcc/testsuite/g++.dg/warn/Wdangling-pointer-5.C [new file with mode: 0644]