IMHO, this is a bug. The code should lower to calls to opAssing for types that define opAssign.
The spec doesn't exactly say it uses memset, but it does imply it:
https://dlang.org/spec/arrays.html#array-copyingtalking about "aggressive parallel code optimizations than possible with the serial semantics of C" and "copying" rather than "assigned" etc.
but indeed postblit lets this work.