-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
Unreachable after Varargs change #39088
Labels
regression
Regression in behavior compared to a previous version
types and dispatch
Types, subtyping and method dispatch
Comments
maleadt
added
the
regression
Regression in behavior compared to a previous version
label
Jan 4, 2021
You only need c to start to see corruption:
|
Reduced:
|
This was referenced Jan 5, 2021
martinholters
added a commit
that referenced
this issue
Oct 19, 2021
…and `__dec` The underlying intersection bug (ref. #39088) looks like ``` julia> typeintersect(Tuple{Tuple{Any, Vararg{Any, N}}, Tuple{Any, Vararg{Any, N}}} where N, Tuple{Tuple{Int,Int,Int}, Tuple}) Tuple{Tuple{Int64, Int64, Int64}, NTuple{4, Any}} ``` It leads to the argument types of the functions with signatures of this type to be inferred wrongly, not actually matching the signature, which easily leads to problems down the road. For the four methods touched here, the fact that the two tuple arguments must have the same length is not actually relevant for dispatch as they are internal functions which are only called if this actually holds. Also, this change will just replace the method error with another error if, for some reason, these fuctions would get called for tuples of unequal length.
LilithHafner
pushed a commit
to LilithHafner/julia
that referenced
this issue
Feb 22, 2022
...by removing unnecessary type checks/assertions. This basically restores the function bodies to what they looked like prior to JuliaLang#40594 and only keeps the changed signatures (with the additional changes to circumvent JuliaLang#39088.
LilithHafner
pushed a commit
to LilithHafner/julia
that referenced
this issue
Mar 8, 2022
...by removing unnecessary type checks/assertions. This basically restores the function bodies to what they looked like prior to JuliaLang#40594 and only keeps the changed signatures (with the additional changes to circumvent JuliaLang#39088.
N5N3
added a commit
to N5N3/julia
that referenced
this issue
Aug 24, 2022
N5N3
added a commit
to N5N3/julia
that referenced
this issue
Aug 24, 2022
N5N3
added a commit
to N5N3/julia
that referenced
this issue
Aug 24, 2022
N5N3
added a commit
to N5N3/julia
that referenced
this issue
Aug 24, 2022
N5N3
added a commit
to N5N3/julia
that referenced
this issue
Aug 24, 2022
N5N3
added a commit
to N5N3/julia
that referenced
this issue
Aug 24, 2022
N5N3
added a commit
to N5N3/julia
that referenced
this issue
Aug 31, 2022
N5N3
added a commit
to N5N3/julia
that referenced
this issue
Sep 1, 2022
close by #46446 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
regression
Regression in behavior compared to a previous version
types and dispatch
Types, subtyping and method dispatch
Bisected to #38136.
The text was updated successfully, but these errors were encountered: