Bug 432 – invalid expression causes compiler seg-fault

Status
RESOLVED
Resolution
DUPLICATE
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D1 (retired)
Platform
x86
OS
All
Creation time
2006-10-14T07:29:00Z
Last change time
2014-02-15T13:21:08Z
Keywords
ice-on-invalid-code
Assigned to
bugzilla
Creator
aziz.koeksal

Comments

Comment #0 by aziz.koeksal — 2006-10-14T07:29:25Z
bool a, b; true && (a = b); // ok in DMD 168 and 169 // DMD 168 and 169 give this error: true && (a) is not an lvalue true && a = b; // only DMD 169 seg-faults here
Comment #1 by fvbommel — 2006-10-14T09:36:06Z
> bool a, b; > true && (a = b); // ok in DMD 168 and 169 irrellevant. > // DMD 168 and 169 give this error: true && (a) is not an lvalue > true && a = b; // only DMD 169 seg-faults here This is equivalent to '(true && a) = b', not 'true && (a = b)' as you seem to imply by including the first bit of code. This means the error message is completely justified. The seg-fault is a bug, of course. (A null pointer dereference, judging by the error dialog) Also occurs on Windows, so set OS to 'All'.
Comment #2 by matti.niemenmaa+dbugzilla — 2006-10-14T10:50:27Z
*** This bug has been marked as a duplicate of 410 ***