julia> type Foo{N} end
julia> Foo{(true, true)}
Foo{(true,true)}
julia> typealias Bar{N} Foo{N}
Foo{N}
julia> Bar{(true, true)}
Foo{(true,true)}
julia> typealias Baz Foo{(true, true)}
Foo{(true,true)}
julia> typealias Quuz{M, N} Foo{(M, N)}
TypeError: Foo: in parameter, expected Type{T}, got Tuple{TypeVar,TypeVar}
Sim, supõe-se que sejam tuplas e não tipos de tupla. Eu culpo @Keno (https://github.com/Keno/Cxx.jl/blob/master/src/cxxtypes.jl#L52).
Espero que isso não seja compatível, mas espero que o @Keno mude (true, false, false)
para Tuple{Val{true}, Val{false}, Val{false}}
em Cxx.jl.
Em minha defesa, esses costumavam ser o mesmo.
Isso é legítimo. Também estou pesquisando os detalhes da implementação Cxx para despachar os tipos Cxx, o que talvez você esperasse que as pessoas não fizessem.
Tuple{true, false, false}
também funciona (embora um pouco estranho, já que não pode ser o tipo de nada).
Fechando como wontfix, já que não acho que estamos planejando quantificar sobre tuplas.