HLSL matrices are limited to a maximum size of 4 in either dimension while the matrix extension allows for much larger sizes. Using concepts in the template declarations of the matrices similar to how resource types are being constrained in #116413 allows a language-specific limitation with friendly diagnostics.