Sorry for all the questions. Using UDTs is a great way to reduce programming time when indentical items are automated. That being said it's suprising to find out that UDTs cannot be used in certain MATH blocks or even a copy function when Destination is more than one. Is there any possiblity that these issues could be mitigated in the next couple of releases, I really think it would make using UDTs so much more efficient.
V0 to V9 is iterating linear memory. That's what the xxxR math functions were designed to do. T0.Acc to T9.Acc is skipping every other DWORD. The skip for UDT0.Field to UDT9.Field is user defined and could be could be up to 252 bytes. Which assumes that's what you meant to do to start with. You may have meant UDT0.Field0 to UDT0.Field9. But regardless, those instructions weren't designed for that, although the last example would actually work if we permitted it.
I'm not saying we can't do it, just that I'm not sure what it will take. At the very least it will require some magic math to figure out what the skip size is. At the worst it would require a complete new set of ranged MATH instructions with additional hidden parameters to manage the skip. I doubt it is trivial in either case, but it might not be terrible. Won't know until it's reviewed. Right now we are eyeballs deep in EIP scanner.