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

fix #21397, Nullable(Tuple) method error #21407

Merged
merged 1 commit into from
Apr 16, 2017
Merged

fix #21397, Nullable(Tuple) method error #21407

merged 1 commit into from
Apr 16, 2017

Conversation

JeffBezanson
Copy link
Sponsor Member

No description provided.

@JeffBezanson JeffBezanson added kind:bugfix This change fixes an existing bug domain:types and dispatch Types, subtyping and method dispatch labels Apr 16, 2017
test/core.jl Outdated
@@ -4820,3 +4820,8 @@ f21271() = convert(Tuple{Type{Int}, Type{Float64}}, (Int, Float64))::Tuple{Type{
f21271(x) = x::Tuple{Type{Int}, Type{Float64}}
@test_throws TypeError f21271()
@test_throws TypeError f21271((Int, Float64))

# issue #21397
bar21397(x::T) where T = T
Copy link
Sponsor Member

Choose a reason for hiding this comment

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

Fomatting

This was caused by widening a signature in `jl_is_cacheable_sig`
such that we ended up calling a specialization containing an unknown
static parameter value.

This failed when the specialization was created by inference, since
it correctly stored a typevar as the value of the static parameter.
However when the specialization was created by the method caching
logic it accidentally worked, since the static parameter value
was derived before widening.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
domain:types and dispatch Types, subtyping and method dispatch kind:bugfix This change fixes an existing bug
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants