Is there a good reason why this fails:
class Test<T: Hashable> {}
var d: Test<AnyHashable>? = nil
let t = Test<String>()
d = t // Cannot assign value of type 'Test<String>' to type 'Test<AnyHashable>?'
while this obviously works ?
var d: AnyHashable? = nil
let t = "123"
d = t // Works fine