https://issues.dlang.org/show_bug.cgi?id=5517
--- Comment #12 from Jonathan M Davis <[email protected]> --- (In reply to Shachar Shemesh from comment #11) > Quoth the same spec: > void main() > { > assert(0, "an" ~ "error message"); > } > > When compiled and run, it will produce the message: > Error: AssertError Failure test.d(3) an error message > > In practice, all it produces is: > Segmentation fault (core dumped) It produces a message when compiled without -release. With -release, it becomes a HLT instruction, so no message. > We can clearly see that dmd, hence, violates the spec. Walter quoted the spec. It's correct. If somewhere is in the spec doesn't match that, then it should be updated. I would not expect the compiler's behavior to be changed. Why have you reopened this issue? If the spec needs to be updated because it's unclear somewhere, then open a new issue for that. But Walter has made it clear this is acting as intended, and I really don't see a problem with it. --
