halt with optional message?

Vladimir Panteleev vladimir at thecybershadow.net
Thu Aug 11 04:59:03 PDT 2011


On Thu, 11 Aug 2011 14:55:29 +0300, bearophile <bearophileHUGS at lycos.com>  
wrote:

>> 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.

But I want a message in debug mode! Are you saying that your use case is  
so much more common than messages meant only for the debug development  
stage?

> 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.

I don't see what the problem is. Is your program buggy? Don't use  
-release. Are you done fixing bugs? Use -release to remove pointless  
clutter. Is the program segfaulting on a user's PC? Send him a debug build!

>> 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 :-(

That's YOUR problem. :)

-- 
Best regards,
  Vladimir                            mailto:vladimir at thecybershadow.net


More information about the Digitalmars-d mailing list