]> git.ipfire.org Git - thirdparty/gcc.git/commit
lto/114501 - missed free-lang-data for CONSTRUCTOR index
authorRichard Biener <rguenther@suse.de>
Thu, 6 Mar 2025 12:48:16 +0000 (13:48 +0100)
committerRichard Biener <rguenth@gcc.gnu.org>
Wed, 2 Apr 2025 12:00:17 +0000 (14:00 +0200)
commited7f67d951292a3f93e5509741b511fd9ea7da30
tree5ff8410f0c7bedc0b5060039f308182fb516d869
parentd9faa7c2eb47c7fabf9dafce6d569f52d49c7030
lto/114501 - missed free-lang-data for CONSTRUCTOR index

The following makes sure to also walk CONSTRUCTOR element indexes
which can be FIELD_DECLs, referencing otherwise unused types we
need to clean.  walk_tree only walks CONSTRUCTOR element data.

PR lto/114501
* ipa-free-lang-data.cc (find_decls_types_r): Explicitly
handle CONSTRUCTORs as walk_tree handling of those is
incomplete.

* g++.dg/pr114501_0.C: New testcase.

(cherry picked from commit fdd95e1cf29137a19baed25f8c817d320dfe63e3)
gcc/ipa-free-lang-data.cc
gcc/testsuite/g++.dg/pr114501_0.C [new file with mode: 0644]