Skip to content

subtype: ignore the rest ∃ decisions if env is unchanged during local_∀_∃_subtype#61503

Merged
N5N3 merged 1 commit intoJuliaLang:masterfrom
N5N3:FOLLOW_61316
Apr 6, 2026
Merged

subtype: ignore the rest ∃ decisions if env is unchanged during local_∀_∃_subtype#61503
N5N3 merged 1 commit intoJuliaLang:masterfrom
N5N3:FOLLOW_61316

Conversation

@N5N3
Copy link
Copy Markdown
Member

@N5N3 N5N3 commented Apr 5, 2026

Following up on #61316, this commit moves the env_unchange check and the reset of Runion.more to local_forall_exists_subtype, ensuring that similar optimizations are applied more broadly, and preventing unnecessary save_env cost.
Additionally, env_unchanged now also detects diagonality changes in variables, which would fix

Tuple{NTuple{2,Int}, Int8} <: Tuple{<:Union{NTuple{2,T},Tuple{S,T}}, <:T} where {S,T>:Int}

@N5N3 N5N3 requested a review from aviatesk April 5, 2026 09:26
@N5N3 N5N3 added types and dispatch Types, subtyping and method dispatch backport 1.12 Change should be backported to release-1.12 backport 1.13 Change should be backported to release-1.13 labels Apr 5, 2026
…l_∀_∃_subtype`

Following up on JuliaLang#61316, this commit moves the `env_unchange` check and the reset of `Runion.more` to `local_forall_exists_subtype`, ensuring that similar optimizations are applied more broadly. Additionally, `env_unchange` now also detects diagonality changes in variables, which would fix
```julia
Tuple{NTuple{2,Int}, Int8} <: Tuple{<:Union{NTuple{2,T},Tuple{S,T}}, <:T} where {S,T>:Int}
```
@N5N3 N5N3 merged commit d0828a8 into JuliaLang:master Apr 6, 2026
8 checks passed
@N5N3 N5N3 deleted the FOLLOW_61316 branch April 6, 2026 22:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport 1.12 Change should be backported to release-1.12 backport 1.13 Change should be backported to release-1.13 types and dispatch Types, subtyping and method dispatch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants