Received: from sog-mx-4.v43.ch3.sourceforge.com ([172.29.43.194] helo=mx.sourceforge.net) by sfs-ml-3.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from ) id 1Wt4wu-0002wb-C8 for bitcoin-development@lists.sourceforge.net; Sat, 07 Jun 2014 00:57:32 +0000 Received-SPF: pass (sog-mx-4.v43.ch3.sourceforge.com: domain of bitpay.com designates 74.125.82.181 as permitted sender) client-ip=74.125.82.181; envelope-from=jgarzik@bitpay.com; helo=mail-we0-f181.google.com; Received: from mail-we0-f181.google.com ([74.125.82.181]) by sog-mx-4.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128) (Exim 4.76) id 1Wt4ws-0002UI-ID for bitcoin-development@lists.sourceforge.net; Sat, 07 Jun 2014 00:57:31 +0000 Received: by mail-we0-f181.google.com with SMTP id w61so3455120wes.26 for ; Fri, 06 Jun 2014 17:57:24 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-type; bh=iVBByUNq2G/n/jI2fqIkla2ymfPuLUx/SONEbQHOrzI=; b=eo6Y+lN7OtT6Yg+97er+CVWi7IiGyYdAFFi3I4caC+sDGLLV0alGrKd3NxpXUhk8n5 WhOaTMVbLMz8BPuBFy7BOAv0nW7+bIRBubF4d+xt02+OvX9TyVv3z195oKywxWdr87m1 F8a14s+CAE/8+/olhpqsRYaAz1ZFPcFJ9OVyZvv+eNkMSGrxY3DjQL1iHx0iYIS0PjXb tgtz/latlsGct8gqHo3xnSIHxDU7OoLB2YDRflcEda9fQJi2TT0Z+jTpf6uuEUNWHESR 9FzLIOzXs5/X14hWSbqTXLVOjCV2QFJD7xgSbXxSZIGsidPWCUPIeX6xNH70gb8sbXZP SS+A== X-Gm-Message-State: ALoCoQk6YJDudGZbVzzpOYDWCKaR8nhzS8BTJ2R6GFLsGyB4vOVBRkiQvcigeADlC/2xDYeTFTcU X-Received: by 10.194.82.9 with SMTP id e9mr11207902wjy.45.1402102644197; Fri, 06 Jun 2014 17:57:24 -0700 (PDT) MIME-Version: 1.0 Received: by 10.195.12.3 with HTTP; Fri, 6 Jun 2014 17:57:04 -0700 (PDT) In-Reply-To: References: <1401822421.27942.YahooMailNeo@web124505.mail.ne1.yahoo.com> <538EF81D.9060301@stud.uni-saarland.de> From: Jeff Garzik Date: Fri, 6 Jun 2014 20:57:04 -0400 Message-ID: To: Pieter Wuille Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -1.6 (-) X-Spam-Report: Spam Filtering performed by mx.sourceforge.net. See http://spamassassin.org/tag/ for more details. -1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for sender-domain -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature X-Headers-End: 1Wt4ws-0002UI-ID Cc: Bitcoin Dev Subject: Re: [Bitcoin-development] # error "Bitcoin cannot be compiled without assertions." <<< List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 07 Jun 2014 00:57:32 -0000 Speaking very generally, the Linux kernel wisdom on this tends to be, * Compile in as many cheap, compiler-predictable asserts as possible into the production runtime. * Debug builds are of limited value. Users do not recompile software, just to provide better bug reports/diagnostics. * Make it as easy as possible for users to send reports that are useful to programmers. * Expensive diagnostics are fine. Compile in, but disable by default at runtime (and make sure these features, when turned off, do not slow down the system). * Make sure the assert/dump provides a high level of diagnostics. Stack trace of each thread + multi-threaded core dump are a good start. -- Jeff Garzik Bitcoin core developer and open source evangelist BitPay, Inc. https://bitpay.com/