From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15371 invoked by alias); 10 Mar 2008 17:08:06 -0000 Received: (qmail 15360 invoked by uid 22791); 10 Mar 2008 17:08:05 -0000 X-Spam-Check-By: sourceware.org Received: from mtaout03-winn.ispmail.ntl.com (HELO mtaout03-winn.ispmail.ntl.com) (81.103.221.49) by sourceware.org (qpsmtpd/0.31) with ESMTP; Mon, 10 Mar 2008 17:07:38 +0000 Received: from aamtaout04-winn.ispmail.ntl.com ([81.103.221.35]) by mtaout03-winn.ispmail.ntl.com with ESMTP id <20080310171036.WEJG19530.mtaout03-winn.ispmail.ntl.com@aamtaout04-winn.ispmail.ntl.com>; Mon, 10 Mar 2008 17:10:36 +0000 Received: from [192.168.0.2] (really [86.17.227.246]) by aamtaout04-winn.ispmail.ntl.com with ESMTP id <20080310170735.HGUB29112.aamtaout04-winn.ispmail.ntl.com@[192.168.0.2]>; Mon, 10 Mar 2008 17:07:35 +0000 Message-ID: <47D56ACE.4060702@knosof.co.uk> Date: Mon, 10 Mar 2008 17:25:00 -0000 From: Derek M Jones User-Agent: Thunderbird 2.0.0.9 (Windows/20071031) MIME-Version: 1.0 To: gcc@gcc.gnu.org, gdr@cs.tamu.edu, iant@google.com, jklowden@freetds.org Subject: Re: -Wparentheses lumps too much together Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2008-03/txt/msg00488.txt.bz2 All, Developer knowledge of operator precedence and the issue of what they intended to write are interesting topics. Some experimental work is described in (binary operators only I'm afraid): www.knosof.co.uk/cbook/accu06a.pdf www.knosof.co.uk/cbook/accu07a.pdf The ACCU 2006 experiment provides evidence that developer knowledge is proportional to the number of occurrences of a construct in source code, it also shows a stunningly high percentage of incorrect answers. The ACCU 2007 experiment provides evidence that the names of the operands has a significant impact on operator precedence choice. The data from the ACCU06 experiment might be used to select a cutoff above (ie, frequency of occurrence or developer performance) which operator pairs will not be flagged as requiring parenthesis. If GCC wanted to be even more selective it could look at the operand names before deciding whether to complain. ps. I am always on he look out for opportunities to run experiments using experienced developers. Does anybody have any suggestions for conferences I might approach? -- Derek M. Jones tel: +44 (0) 1252 520 667 Knowledge Software Ltd mailto:derek@knosof.co.uk Applications Standards Conformance Testing http://www.knosof.co.uk