From owner-freebsd-ports@FreeBSD.ORG Wed Jan 26 10:44:00 2005 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 51DEF16A4D2 for ; Wed, 26 Jan 2005 10:44:00 +0000 (GMT) Received: from av1-2-sn4.m-sp.skanova.net (av1-2-sn4.m-sp.skanova.net [81.228.10.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 48AAD43D49 for ; Wed, 26 Jan 2005 10:43:59 +0000 (GMT) (envelope-from ertr1013@student.uu.se) Received: by av1-2-sn4.m-sp.skanova.net (Postfix, from userid 502) id E813337E6B; Wed, 26 Jan 2005 11:43:57 +0100 (CET) Received: from smtp4-2-sn4.m-sp.skanova.net (smtp4-2-sn4.m-sp.skanova.net [81.228.10.180]) by av1-2-sn4.m-sp.skanova.net (Postfix) with ESMTP id D86B137E49 for ; Wed, 26 Jan 2005 11:43:57 +0100 (CET) Received: from falcon.midgard.homeip.net (h201n1fls24o1048.bredband.comhem.se [212.181.162.201]) by smtp4-2-sn4.m-sp.skanova.net (Postfix) with SMTP id A032337E48 for ; Wed, 26 Jan 2005 11:43:57 +0100 (CET) Received: (qmail 3857 invoked by uid 1001); 26 Jan 2005 10:43:56 -0000 Date: Wed, 26 Jan 2005 11:43:56 +0100 From: Erik Trulsson To: Michael Sierchio Message-ID: <20050126104355.GA3837@falcon.midgard.homeip.net> Mail-Followup-To: Michael Sierchio , Joe Marcus Clarke , ports@freebsd.org, Michael Sierchio , lioux@freebsd.org References: <41F6F431.6060005@tenebras.com> <1106704507.16118.14.camel@shumai.marcuscom.com> <41F72C02.7060901@camber-thrust.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <41F72C02.7060901@camber-thrust.net> User-Agent: Mutt/1.5.6i cc: ports@freebsd.org cc: Michael Sierchio cc: lioux@freebsd.org Subject: Re: FreeBSD Port: qmail-1.03_3 X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Jan 2005 10:44:00 -0000 On Tue, Jan 25, 2005 at 09:34:58PM -0800, Michael Sierchio wrote: > Joe Marcus Clarke wrote: > > >>- while ((k > i) && (cmds.s[k - 1] == ' ') || (cmds.s[k - 1] == '\t')) > >>+ while ((k > i) && ((cmds.s[k - 1] == ' ') || (cmds.s[k - 1] == > >>'\t'))) > > > >Actually, if k is less than or equal to i and cmds.s[k-1] is a tab, then > >the first bit of code evaluates to true while the second evaluates to > >false. I haven't looked at the rest of the code, but those statements > >are semantically different, and I think the second is more correct. > > You're simply mistaken. > > ( 1 && 0 || 1 ) will ALWAYS evaluate to 1 on any ANSI C compiler. No, it will evaluate to 0. && has higher precedence than ||. (x && y || z) is equivalent to ((x && y) || z) which is different from (x && (y || z)). -- Erik Trulsson ertr1013@student.uu.se