Invalidations findings (from a GMT case)

No. It’s the same reason that

julia> isconcretetype(Array)
false

julia> isconcretetype(Tuple)
false

julia> isconcretetype(Pair)
false

but

julia> isconcretetype(Array{Float32,3})
true

julia> isconcretetype(Tuple{Int,String})
true

julia> isconcretetype(Pair{Symbol,Any})
true

Until all the parameters are specified, it’s not concrete. As I said above, “Any time you have abstract parameters you will get inference failures.”