So you are basically saying that D does not provide modular arithmetic, but allows you to continue with the incorrect result of an overflow as a modulo representation?
Correctness is an emergent property - when behavior matches expectation, so overflow has variable correctness in various parts of the code.