Why is this not statically enforced in the signature of the template?