Vladimir Panteleev: > Besides, there are some who think that the special case of assert(0) is > confusing/inconsistent with regular asserts enough,
The discussion ended with no changes in D because I think for Walter it's a problem not large enough to be worth a change in D. > If I'm writing a commercial, closed-source program meant for > redistribution, including any unnecessary information that helps reversers > to understand how the program works is just stupid. Then you don't add a message to assert(0), so it keeps being translated with just an efficient HLT. The purpose of D programs is varied, there are not just closed source programs to sell. The user of a small D program I have recently written was sitting in a room near mine. He has hit an assert, he has told me what the message is, and I have fixed the code and sent him the fixed binary. The program is now working, it seems. > Failed asserts in release executables should never happen, unless your > program is buggy. If your program is buggy, don't use -release until > you've debugged it. Sometimes I think it's not buggy, but it contains one or more bugs :-( > This is the least of my concern. I'm trying to use purity more and more :-) It helps me avoid some troubles. As more and more stuff in Phobos becomes pure, I suggest you to use this attribute more in your code. The purpose of this thread was not just to ask for a feature (I use Bugzilla for that), but also to know if this is first of all a good idea. Thank you for your answers, I am seeing the situation a bit better now. Bye, bearophile
