Enum cases as protocol witnesses

I think in that case we would have to change the outcome of SE-0155 which banned case foo(). There isn't a way to write a case foo with type (T.Type) -> () -> T today.