https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119033
--- Comment #7 from rguenther at suse dot de <rguenther at suse dot de> --- On Thu, 27 Feb 2025, hubicka at gcc dot gnu.org wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119033 > > Jan Hubicka <hubicka at gcc dot gnu.org> changed: > > What |Removed |Added > ---------------------------------------------------------------------------- > CC| |hubicka at gcc dot gnu.org > > --- Comment #6 from Jan Hubicka <hubicka at gcc dot gnu.org> --- > Note that the testcase was made artificially as a result of discussing > questions of tracking provenance of pointers in C. It seems there are attempts > to fix C standard wrt this which is something we may want to keep eye on, > since > some of the proposals seems to have strange implications, such as the need to > track if pointer was ever converted to integer. > > I was originally trying to break PTA with this (sing the commented out call to > test2), but that failed, since making &test.a to escape makes whole test to > escape, so we will not produce wrong code. Not sure if that is by design > though > :) I think PTA itself is fine, it's really the copy propagation from equivalences that breaks the IL since value equivalence != provenance equivalence.