Passing UDT to a pop-up... type safety

I noticed that if a parameter is defined to be a particular UDT, there appears to be no enforcement that the UDT passed into it is of the same type of UDT… it will accept any UDT, and as long as the other type of UDT has members with the same names, everything appears to be happy.

Is this a bug, or a feature?

I’m hoping it’s a feature, because it allows me to get around an issue I have with nested UDTs (for which support is comically bad). In my case, I have thee UDTs… TypeA, TypeB, and TypeC, such that:

TypeA
–TypeC
TypeB
–TypeC

So they both have the same nested UDT (and other members specific to TypeA and TypeB, but not relevant for this use case). I’ve been trying to pass the just the nested TypeC from either to a popup, but can’t. However, if I configure the popup to accept a TypeA, and only reference the nested TypeC members, I can still pass it a TypeB and it seems to work fine.

Is there any intention to “fix” this? I hope not.