This can result in unexpected behavior, so explicitly erroring is best.
We can of course add support for this later if we see real value in it
and can come up with predictable rules for how it should work.
This is too complex to easily support; better to explicitly error for
now vs. the current behavior which is just silently doing something
other than you probably expect.