digitalmars.D.bugs - [Issue 17245] New: Errors about expressions with no effect only are
- via Digitalmars-d-bugs (25/28) Mar 07 2017 https://issues.dlang.org/show_bug.cgi?id=17245
https://issues.dlang.org/show_bug.cgi?id=17245 Issue ID: 17245 Summary: Errors about expressions with no effect only are given for basic types Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: normal Priority: P1 Component: dmd Assignee: nobody puremagic.com Reporter: jack jackstouffer.com Example void main () { Object a, b; a == b; } gives no error. The problem lies, as ketmar put it, with opEqualsoops. no more error messages. yes, i know that this invokes `opEquals()`, and `opEquals()` can have side-effects. but what are the chances of writing such code *intentionally*?Here, the compiler can be helpful by outputing an error if the used opEquals is marked as pure. There's no way that a pure opEquals should be used in an expression with no effect. --
Mar 07 2017