It is invalid if the same decoration is applied to the same id multiple times. This adds a check before adding a decoration that the decoration is not already in the list. If it is, then the duplicate is not added. Fixes #3627
Matrices consuming one vector are treated like vectors for alignment, and there is no "trailing padding" for matrices and arrays.