tree be94501d4a6fe8a1a18410f697b473ed80228576
parent b5ed0ae6bc70792cb9749444b2803c3fa72276e4
author Krisitan Erik Olsen <kristian.erik@outlook.com> 1783500226 -0700
committer GitHub <noreply@github.com> 1783500226 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJqTg3CCRC1aQ7uu5UhlAAATi4QAA7gv2JQMX7yKQ6fO8y4G2mf
 V+OhHRcMx5XIlRDLrEoH2XS5CynVyadlr2pxKhSRc7owHL03lRtD1zGZeiGbw/T9
 A13ZQtLIOoIHMJUjS/JgPIXKqnIwZs7AmvXhELaoNCXrt/4ueFCb6XNBqVxY6dH/
 t30+gyhM2jbRIbY5V1q8AzKyRKXAESf7ic88v/9IbZ8owJ/8AEyM4dFmuN5Ex3UX
 dc73jm0+isceX5keTXexZ09fgF5Tv87Xlf4VSjbSBUW+vdk25RNxrihCrTvtPhmN
 S5fe8miY2x8BC9ckgyDP4IIhmI6eJtHl1ONzkcF7E0AuJ4GceJ+XA+QefETKz4IO
 pHCLcNbTTg0s86di9+yy4U38cOGr5Fs2iaq+q8es7IZYpHXaX7T9yF50wJFD/PYL
 2Ix7e6TkMlzuWMRM6abl193lyk7NGIaHODAEk0Vzfv1b5wPHJcsiKHinJf3VdeuM
 2vuykXJf7XAIF8fjnD5i0/S2moSLNiBVJuvu+SDhc46npGQDwiTINpvJIyOJ5QRm
 7a1kenNKd3uCHVBY4mlvO7wYPZ+5o95Of8jj3Y7qk5spP0JnZsWddO4FXlR2X+ma
 FQnEp4pL3Lh5IFxn/VJBvfI41tPluELPikG1bp4sNRwyrwgyltwhM70Or9GY6rVe
 r+SzQsX8omRvsxIOP4C+
 =xBox
 -----END PGP SIGNATURE-----
 

[AssumptionCache] Deduplicate affected values in removeAffectedValues (#205441)

removeAffectedValues can encounter duplicate entries in the Affected
list when a separate_storage bundle uses the same pointer for both
arguments (e.g. "separate_storage"(ptr %p, ptr %p)). The duplicate
entries share both the same value and the same bundle index. The first
iteration handles the value completely and may erase the AffectedValues
entry, causing the second iteration to fail the assertion.

This patch deduplicates entries in removeAffectedValues by (Value *,
Index) pair, matching the deduplication already done in
updateAffectedValues. This also fixes the ExpectedMatches counting in
the debug logic added by #205275, which otherwise miscounts when
duplicates are present.

Fixes #205378.