Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

typeintersect: fix potential free TypeVar caused by chained inner var. #53675

Merged
merged 1 commit into from
Mar 13, 2024

Conversation

N5N3
Copy link
Member

@N5N3 N5N3 commented Mar 9, 2024

Noticed when working on 02f27c2. The substitution and re-sorting of inner vars are incomplete on master. This commit re-organized the code by:

  1. Flatten the inner vars into a reversed list and handling them just like vars in norm bindings.
  2. Then perform a global re-sorting on all vars.
  3. After that, the inner vars get frozen and dependent bounds are refreshed.

@N5N3 N5N3 added the types and dispatch Types, subtyping and method dispatch label Mar 9, 2024
@N5N3 N5N3 marked this pull request as draft March 9, 2024 07:50
@N5N3 N5N3 force-pushed the complete-innervar-resorting branch from 7a793bc to a3c09f4 Compare March 9, 2024 07:54
Noticed when working on 02f27c2.
The substitution and re-sorting of inner vars are incomplete on master.
This commit re-organized the code by:
1. Flatten the inner vars into a reversed list and handling them just like vars in norm bindings.
2. Then perform a global re-sorting on all vars.
3. After that, the inner vars get frozen and dependent bounds are refreshed.
@N5N3 N5N3 force-pushed the complete-innervar-resorting branch from ffdbce2 to d47c237 Compare March 9, 2024 08:52
@N5N3
Copy link
Member Author

N5N3 commented Mar 9, 2024

@nanosoldier runtests()

@nanosoldier
Copy link
Collaborator

The package evaluation job you requested has completed - possible new issues were detected.
The full report is available.

@N5N3
Copy link
Member Author

N5N3 commented Mar 10, 2024

@nanosoldier runtests(["LaurentPolynomials", "PuiseuxPolynomials", "CycPols", "GenericDecMats", "SphericalFunctions", "DispersiveShallowWater", "DiffEqFinancial", "NBodySimulator", "PredefinedDynamicalSystems", "ChaosTools", "HetaSimulator", "PETLION", "NeuronBuilder", "SurfaceReactions", "AstrodynamicalModels", "SMLMFrameConnection", "QuantumCliffordPlots", "AvailablePotentialEnergyFramework"])

@nanosoldier
Copy link
Collaborator

The package evaluation job you requested has completed - possible new issues were detected.
The full report is available.

Copy link
Member

@vtjnash vtjnash left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SGTM. I didn't follow all of the code rearrangements, but the concept sounds good and it passes tests

@N5N3 N5N3 marked this pull request as ready for review March 13, 2024 15:51
@N5N3 N5N3 merged commit 3d34f11 into JuliaLang:master Mar 13, 2024
8 checks passed
@N5N3 N5N3 deleted the complete-innervar-resorting branch March 13, 2024 15:52
KristofferC pushed a commit that referenced this pull request May 22, 2024
…ar. (#53675)

Noticed when working on 02f27c2. The
substitution and re-sorting of inner vars are incomplete on master. This
commit re-organized the code by:
1. Flatten the inner vars into a reversed list and handling them just
like vars in norm bindings.
2. Then perform a global re-sorting on all vars.
3. After that, the inner vars get frozen and dependent bounds are
refreshed.

(cherry picked from commit 3d34f11)
@KristofferC KristofferC added the backport 1.11 Change should be backported to release-1.11 label May 22, 2024
@KristofferC
Copy link
Member

Note, I backported this to 1.11 as well since without it there were some merge conflicts.

KristofferC pushed a commit that referenced this pull request May 23, 2024
…ar. (#53675)

Noticed when working on 02f27c2. The
substitution and re-sorting of inner vars are incomplete on master. This
commit re-organized the code by:
1. Flatten the inner vars into a reversed list and handling them just
like vars in norm bindings.
2. Then perform a global re-sorting on all vars.
3. After that, the inner vars get frozen and dependent bounds are
refreshed.

(cherry picked from commit 3d34f11)
@KristofferC KristofferC removed the backport 1.11 Change should be backported to release-1.11 label May 28, 2024
@N5N3 N5N3 mentioned this pull request May 28, 2024
23 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
types and dispatch Types, subtyping and method dispatch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants