https://issues.dlang.org/show_bug.cgi?id=20708
Issue ID: 20708 Summary: result of cast not specified when value is out of range Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: major Priority: P1 Component: dmd Assignee: nob...@puremagic.com Reporter: johanenge...@weka.io The specification says nothing about what the result of a numeric cast is when the value is outside the receiving type's range. For example: ``` uint a = 260; auto b = cast(ubyte) a; float f = 1.203125f * 255.0f; auto zz = cast(ubyte) f; ``` Not having the result specified currently means that it is treated as UB by LDC and GDC. --