https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119085
--- Comment #14 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The releases/gcc-13 branch has been updated by Martin Jambor <jamb...@gcc.gnu.org>: https://gcc.gnu.org/g:2f21edc2a760862eab9e542aa7e4fc7886dbd41f commit r13-9892-g2f21edc2a760862eab9e542aa7e4fc7886dbd41f 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. (cherry picked from commit dabac057141c26a69325a410c81de0ff2157c6c9)