Return-Path: X-Original-To: apmail-stdcxx-dev-archive@www.apache.org Delivered-To: apmail-stdcxx-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 9759E98A0 for ; Fri, 21 Sep 2012 00:04:23 +0000 (UTC) Received: (qmail 48390 invoked by uid 500); 21 Sep 2012 00:04:23 -0000 Delivered-To: apmail-stdcxx-dev-archive@stdcxx.apache.org Received: (qmail 48353 invoked by uid 500); 21 Sep 2012 00:04:23 -0000 Mailing-List: contact dev-help@stdcxx.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@stdcxx.apache.org Delivered-To: mailing list dev@stdcxx.apache.org Received: (qmail 48343 invoked by uid 99); 21 Sep 2012 00:04:23 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 21 Sep 2012 00:04:23 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of wojciech.meyer@googlemail.com designates 209.85.212.176 as permitted sender) Received: from [209.85.212.176] (HELO mail-wi0-f176.google.com) (209.85.212.176) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 21 Sep 2012 00:04:17 +0000 Received: by wibhn17 with SMTP id hn17so1195173wib.17 for ; Thu, 20 Sep 2012 17:03:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20120113; h=from:to:subject:references:date:in-reply-to:message-id:user-agent :mime-version:content-type; bh=qHUDLWAR6abpBumJlRqSpQYkT2ZtWZIfRipRmY+yGwk=; b=jXZIqC7fhdScJb57ZiHRT20zalO9xh4xhabB3CDzrGSkZWPtaMJ/OMLAe5LX0s8CEL g98mb5k++4q2E0F2qAKRoexsp165SvbXb7RwkRFb7JqMB8qjr5+I8bp4jxFaByGsi7op mRULyLrbDvHvORs9ZFy1IJSUyv6yO7uqjhfeqydD2LSr/vcfqZAYD7ri7vyhgNV/fPas TE9e1u75/f4HEt2Zdb9pYnJxuY0ePkO2GKkFFGjngnYK7naasarKUQfzU/HiCRhmyYuC 9wHWK+4R+ASQUCLpXcSPzKdRGUlePidYz+efksu4UfqgJr1EDKq+EQKQmA+9A582/jTZ 3/rQ== Received: by 10.216.140.131 with SMTP id e3mr1455575wej.134.1348185837031; Thu, 20 Sep 2012 17:03:57 -0700 (PDT) Received: from spec-desktop.danmey.org (cpc1-cmbg12-0-0-cust201.5-4.cable.virginmedia.com. [86.9.116.202]) by mx.google.com with ESMTPS id k2sm13435163wiz.7.2012.09.20.17.03.55 (version=TLSv1/SSLv3 cipher=OTHER); Thu, 20 Sep 2012 17:03:56 -0700 (PDT) From: Wojciech Meyer To: dev@stdcxx.apache.org Subject: Re: STDCXX-1056 : numpunct fix References: <505A6877.7090507@hates.ms> <346B7FD6-C961-4C0C-91C3-9FBBE442490D@hates.ms> <53D52D02E87FA04A948D9A74A7AE617C12E89935C4@Eagle.Blue.Roguewave.Com> Date: Fri, 21 Sep 2012 01:04:09 +0100 In-Reply-To: (Liviu Nicoara's message of "Thu, 20 Sep 2012 19:46:50 -0400") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.94 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Liviu Nicoara writes: > On Sep 20, 2012, at 5:23 PM, Stefan Teleman wrote: > >> On Thu, Sep 20, 2012 at 4:45 PM, Travis Vitek >> wrote: >> >>>> >>>> I'll let you in on a little secret: once you call setlocale(3C) and >>>> localeconv(3C), the Standard C Library doesn't release its own locale >>>> handles until process termination. So you might think you save a lot >>>> of memory by destroying and constructing the same locales. You're >>>> really not. It's the Standard C Library locale data which takes up a >>>> lot of space. >>> >>> You have a working knowledge of all Standard C Library implementations? >> >> I happen to do, yes, for the operating systems that I've been testing >> on. I also happen to know that you don't. This fact alone pretty much >> closes up *this* particular discussion. >> >> Do yourself, and this mailing list a favor: either write a patch which >> addresses all of your concerns *AND* eliminates all the race >> conditions reported, or stop this pseudo software engineering bullshit >> via email. >> >> There is apparently, a high concentration of know-it-alls on this >> mailing list, who are much better at detecting race conditions and >> thread unsafety than the tools themselves. Too bad they aren't as good >> at figuring out their own bugs. I fully agree - tools are great, however I know a little about compilers, and I can tell you that there are limits of static guarantees you can get from any analyser, because in nature there is something defined as a "halting problem", which limits the tools even the topnotch ones based on abstract interpretation to the certain extent. The halting problem says: "for every program in a formal language that is Turing complete you can't say with 100% assurance it will halt for every input data". You can try to analyse it statically, but then there is a balance between analysing and interpreting parts of it, even in the extreme case if you run it - you will not know if it suppose to halt. Therefore please use tools but be a bit reserved for the results. All these MT analysers are based on a simple heuristics and logical assertions that can't give you 100% right results. I don't think people here are picky about your patches, it's just better sometimes to take a breath and see the big picture. -- Wojciech Meyer http://danmey.org