diff --git a/base/compiler/tfuncs.jl b/base/compiler/tfuncs.jl index 995c57bd4f0b0..e6625e2d55925 100644 --- a/base/compiler/tfuncs.jl +++ b/base/compiler/tfuncs.jl @@ -1558,7 +1558,7 @@ function tuple_tfunc(argtypes::Vector{Any}) else params[i] = Type end - elseif x === DataType || x === UnionAll + elseif iskindtype(x) params[i] = x elseif !isvarargtype(x) && hasintersect(x, Type) params[i] = Union{x, Type}