From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3 invoked by alias); 30 Nov 2015 03:32:27 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 37253 Received: (qmail 5097 invoked from network); 30 Nov 2015 03:32:26 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_DKIM_INVALID autolearn=ham autolearn_force=no version=3.4.0 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= daniel.shahaf.name; h=content-type:date:from:message-id :mime-version:subject:to:x-sasl-enc:x-sasl-enc; s=mesmtp; bh=HD2 Bcp2k6Rxe9GGCvGM2t+CfzD4=; b=uhr//ke7XDN9/rn+GHZVleE5usqDt/bQua1 nOXlqDRwHHODw3MxSRnoDAn+7oRTsHZUj04wg0qM52/KetyauvUE4mxRnAugtDj0 IEj9GCBqYX2nkhcmgxaiGlvv89BvI4pIa9/buyJTnK1aRYfW7VupZdNzObYt201w qU+2MV7k= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:message-id :mime-version:subject:to:x-sasl-enc:x-sasl-enc; s=smtpout; bh=HD 2Bcp2k6Rxe9GGCvGM2t+CfzD4=; b=dvMprD/GuSgKxJGlI+OhOcpjFGleO2kKS5 9bxI6fS+/DOBNa0SmDfx3Dpqq9t1OB9jq+Drs5sRwSMNPAVNTMoHoYJ1isFHcaC5 5p9P3LlorEb+oE+jwI6Ybl8y0rvgwEQYaqJPle20BgKpQxKH3mx+c1CToEOKQDyv tYrFs3DcQ= X-Sasl-enc: 8NaTaEuypLM8E6fVrt19MEGuwRImg4pYZKqlFnaDRhxx 1448853716 Date: Mon, 30 Nov 2015 03:21:53 +0000 From: Daniel Shahaf To: zsh-workers@zsh.org Subject: [PATCH 3/3] Constify two local variables. Message-ID: <20151130032153.GH2504@tarsus.local2> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.21 (2010-09-15) --- I assume that v->pm->gsu.a->getfn() has no access to v->start and v->end, hence changing the order is safe. Are there any compilers that choke on 'char **const' (const pointer to pointer to char)? Cheers, Daniel Src/params.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/Src/params.c b/Src/params.c index d8bf83d..142697f 100644 --- a/Src/params.c +++ b/Src/params.c @@ -2552,18 +2552,20 @@ setarrvalue(Value v, char **val) v->pm->node.nam); return; } else { - char **old, **new, **p, **q, **r; - int pre_assignment_length; + char **const old = v->pm->gsu.a->getfn(v->pm); + char **new; + char **p, **q, **r; /* index variables */ + const int pre_assignment_length = arrlen(old); int post_assignment_length; int i; + q = old; + if ((v->flags & VALFLAG_INV) && unset(KSHARRAYS)) { if (v->start > 0) v->start--; v->end--; } - q = old = v->pm->gsu.a->getfn(v->pm); - pre_assignment_length = arrlen(old); if (v->start < 0) { v->start += pre_assignment_length; if (v->start < 0) -- 2.1.4