Since enforcing it basically means changing the type of it based on the runtime data, I don't know if it's possible. I think it would be fine if the behavior will be the same as the behavior of crossing a pipe with an empty pipe. Maybe we should just add a comment to make people aware of this possibility.