I was looking at the _d_arrayassign family functions in druntime:https://github.com/dlang/druntime/blob/master/src/rt/arrayassign.d#L47 https://github.com/dlang/druntime/blob/master/src/rt/arrayassign.d#L139[...]
Nope. Those are valid points. Templatizing the code is the way to go.