https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119085
--- Comment #11 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Martin Jambor <jamb...@gcc.gnu.org>: https://gcc.gnu.org/g:171fcc80ede596442712e559c4fc787aa4636694 commit r16-2441-g171fcc80ede596442712e559c4fc787aa4636694 Author: Martin Jambor <mjam...@suse.cz> Date: Wed Jul 23 11:22:33 2025 +0200 tree-sra: Avoid total SRA if there are incompat. aggregate accesses (PR119085) We currently use the types encountered in the function body and not in type declaration to perform total scalarization. Bug PR 119085 uncovered that we miss a check that when the same data is accessed with aggregate types that those are actually compatible. Without it, we can base total scalarization on a type that does not "cover" all live data in a different part of the function. This patch adds the check. gcc/ChangeLog: 2025-07-21 Martin Jambor <mjam...@suse.cz> PR tree-optimization/119085 * tree-sra.cc (sort_and_splice_var_accesses): Prevent total scalarization if two incompatible aggregates access the same place. gcc/testsuite/ChangeLog: 2025-07-21 Martin Jambor <mjam...@suse.cz> PR tree-optimization/119085 * gcc.dg/tree-ssa/pr119085.c: New test.