Open MilesCranmer opened 2 weeks ago
The effect inference seems fine. I guess this is just the usual limitation of #29368:
julia> typeof((Int,))
Tuple{DataType}
julia> typeof((Int,)) <: Tuple{Type{Int}}
false
I guess im also surprised it doesn’t inline it
(Is there any general way to force specialisation for a Vararg which includes types? There is this but it seems to only work if all the Vararg is types)
It seems like constant propagation is affected by a vararg, even if typed to
::Vararg{Any,N}
which I would expect to force specialization via this page of the docs.Constant propagation only happens through
call1
, butcall2
andcall3
block it: