Both examples: int main() { return cast(int)(.0>>0); } int main() { return cast(int)(.0>>>0); } result in an ICE in the compiler. Whereas int main() { return cast(int)(.0<<0); } is handled perfectly fine. As this is not supposed to be compilable, I assume that the error type isn't being handled as it should be. Regards
*** This issue has been marked as a duplicate of issue 4751 ***