It was pointed out to me that there is nothing in the spect that defines casting between integer types of different sizes. For example: auto x = cast(int)long.max; There is nothing in the spec that says what should happen here. Of course, we all know what it should and does do. It should be spelled out. Also I cannot find "Value Range Propagation" anywhere in the spec. Somewhat related.
@ntrel created dlang/dlang.org pull request #3373 "Fix Issue 21279 - cast expression between integer types is not defined" fixing this issue: - Fix Issue 21279 - cast expression between integer types is not defined https://github.com/dlang/dlang.org/pull/3373
*** Issue 20708 has been marked as a duplicate of this issue. ***
dlang/dlang.org pull request #3373 "Fix Issue 21279 - cast expression between integer types is not defined" was merged into master: - b3b668f37ead8536d8ff81ff40caf34e3f05a4a5 by Nick Treleaven: Fix Issue 21279 - cast expression between integer types is not defined https://github.com/dlang/dlang.org/pull/3373