From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: zsh-workers-return-43674-ml=inbox.vuxu.org@zsh.org X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from primenet.com.au (ns1.primenet.com.au [203.24.36.2]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id c8feffac for ; Thu, 11 Oct 2018 12:47:18 +0000 (UTC) Received: (qmail 8736 invoked by alias); 11 Oct 2018 12:47:05 -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: List-Unsubscribe: X-Seq: 43674 Received: (qmail 4942 invoked by uid 1010); 11 Oct 2018 12:47:05 -0000 X-Qmail-Scanner-Diagnostics: from mailout2.w1.samsung.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.99.2/21882. spamassassin: 3.4.1. Clear:RC:0(210.118.77.12):SA:0(-7.3/5.0):. Processed in 4.336527 secs); 11 Oct 2018 12:47:05 -0000 X-Envelope-From: p.stephenson@samsung.com X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.w1.samsung.com 20181011124656euoutp023f3dd2d318a17985b0677d6fa04cb5d6~cjqYM4mnr0133101331euoutp02Z DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1539262016; bh=QfeplznZcVUmlvq6DTF6MognFS2pwXmFpKMTEuVQ940=; h=Subject:From:To:Date:In-Reply-To:References:From; b=hJXvRV+IRtG+H05cQmTIxILB1KIsgWjSGddfUaE1mOdE4S/+osYESTEJskzLA1eeP TrtFAaYnNXbu3N3R5itveiuWZ/LpEAMKixuhlLZFZ6XVJpNN+EsqX7NNcZrmjrdar2 1dXHBiyoOtBF7U/ZpKdzfc78NzMhQDVG+18UUMU4= X-AuditID: cbfec7f5-79db79c0000012c6-bb-5bbf463f977c Subject: Re: [PATCH] [long] typeset doesn't report tied parameters (and related issues) From: Peter Stephenson To: Date: Thu, 11 Oct 2018 13:46:53 +0100 In-Reply-To: <90011-1539251122.433925@_kdU.FXyh.KLiu> X-Mailer: Evolution 3.18.5.2-0ubuntu3.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrHIsWRmVeSWpSXmKPExsWy7djP87r2bvujDSb+l7U42PyQyYHRY9XB D0wBjFFcNimpOZllqUX6dglcGZd27mMqeKVV8WP1L7YGxkbVLkYODgkBE4ltXfFdjFwcQgIr GCVWbJ3L2sXICeT0MUm0feeBSPQySexbdBssAdLQsXQ+G0RiOaPE+xOP2eCqpr17zQrhnGGU OL1iBlTmAqPEpYfzGUH6hQUiJR73bwez2QQMJaZumg1miwhISlxrPg1mswioSpxZsJYJxOYU MJX48nMiO8RuDYkNN4+BxXkFBCVOznzCAmIzC8hLNG+dzQyyTELgPpvEjBMzGSGKyiSm7rnG DNHsIjFrUhMbhC0s8er4FqihMhL/d85ngmhuZ5RYM+k1O4TTwyix6egdRogqa4m+2xcZQWHG LKApsX6XPkTYUeL8+sPMkKDkk7jxVhDiID6JSdumQ4V5JTrahCCq1SR2NG1lhAjLSDxdozCB UWkWkm9mIflmFsKqBYzMqxjFU0uLc9NTi43zUsv1ihNzi0vz0vWS83M3MQJTwel/x7/uYNz3 J+kQowAHoxIP7w+pfdFCrIllxZW5hxglOJiVRHj1ZwCFeFMSK6tSi/Lji0pzUosPMUpzsCiJ 8y6btzFaSCA9sSQ1OzW1ILUIJsvEwSnVwCj47v77niDTtYmRl4tOyJrMtbj9xLl184Ycnlzf Tmlna42dvL9Mdx69npn5S/VA4O4mSZeD4Se3HJyreVL+wGSZ7O+et7+7v/u5R3j7tWMtKiKv t+/vucO7a2Zemb/6EpsNYVdOBaj90pIzXR0bytbyaqvX/dKPHk0XXxdJhKRlWHj4Xim4dFWJ pTgj0VCLuag4EQCOJBQ1AQMAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFmpkkeLIzCtJLcpLzFFi42I5/e/4XV07t/3RBnduaVgcbH7I5MDoserg B6YAxig9m6L80pJUhYz84hJbpWhDCyM9Q0sLPSMTSz1DY/NYKyNTJX07m5TUnMyy1CJ9uwS9 jEs79zEVvNKq+LH6F1sDY6NqFyMnh4SAiUTH0vlsILaQwFJGiadXtCDiMhKfrnxkh7CFJf5c 6wKq4QKq6WaSOPrsGJRzhlFi0v5VUM4FRomlW+axgLTwChhKTLq8nRXEFhaIlHjcv50RxGYD ik/dNBvMFhGQlLjWfBrMZhFQlTizYC0TiM0pYCrx5edEdoiTPjJKvPngB2IzC2hKtG7/DXWS hsSGm8eYIHYJSpyc+YQFokZeonnrbOYJjEKzkLTMQlI2C0nZAkbmVYwiqaXFuem5xYZ6xYm5 xaV56XrJ+bmbGIHBv+3Yz807GC9tDD7EKMDBqMTD+0NqX7QQa2JZcWXuIUYJDmYlEV79GUAh 3pTEyqrUovz4otKc1OJDjKZAD01klhJNzgdGZl5JvKGpobmFpaG5sbmxmYWSOO95g8ooIYH0 xJLU7NTUgtQimD4mDk6pBkaj9bkvondMLPAPPjh5UQDDDWelCbsrJF8JfPxs5inI/dU3aRZ/ fH7Mq1U8cnMf3+sPnPTMvmfOOpG/lydfsW7XdJx7RuK/5UL3DZ3+53w+yeWIXpA7mP9AYdWp q90SH5RZ9oi6hJxnvFLu/fXMi8Xc1m3uj/acVZTkUr5eWSK4bdEStiw5+ydKLMUZiYZazEXF iQCpzhCNlAIAAA== Message-Id: <20181011124654eucas1p1aeebad2a8807888953b01164384fec74~cjqWzSqtg1007310073eucas1p1C@eucas1p1.samsung.com> X-CMS-MailID: 20181011124654eucas1p1aeebad2a8807888953b01164384fec74 X-Msg-Generator: CA Content-Type: text/plain; charset="utf-8" X-RootMTR: 20181011095155epcas1p16697585988426e9502ec38c9f5f5944a X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20181011095155epcas1p16697585988426e9502ec38c9f5f5944a References: <20180924210550.carijwjibarjivu4@chaz.gmail.com> <20181007133545.zzkrbc3ed6shnk3e@chaz.gmail.com> <90011-1539251122.433925@_kdU.FXyh.KLiu> On Thu, 2018-10-11 at 11:45 +0200, Oliver Kiddle wrote: > On 7 Oct, Stephane Chazelas wrote: > >  > > +#define PM_NAMEDDIR     (1<<31) /* has a corresponding nameddirtab entry    */ > On a 32-bit system, this now results in integer overflow compiler > warnings. flags in struct hashnode is declared as being of type int. Right, missed that, sorry. We still have scope to use the trick we're already using in a number of other cases --- overlap parameter-only and function-only flags. Parameters never have ksh or zsh storage type, and functions are never special or marked as local. Bumped the dev version number as this will invalidate wordcode. pws diff --git a/Config/version.mk b/Config/version.mk index 8448544..03f6cbf 100644 --- a/Config/version.mk +++ b/Config/version.mk @@ -27,5 +27,5 @@  # This must also serve as a shell script, so do not add spaces around the  # `=' signs.   -VERSION=5.6.2-dev-0 -VERSION_DATE='September 15, 2018' +VERSION=5.6.2-dev-1 +VERSION_DATE='October 11, 2018' diff --git a/Src/zsh.h b/Src/zsh.h index 8d39a04..8941588 100644 --- a/Src/zsh.h +++ b/Src/zsh.h @@ -1867,7 +1867,7 @@ struct tieddata {  /* The following are the same since they *   * both represent -U option to typeset   */  #define PM_UNIQUE (1<<13) /* remove duplicates                        */ -#define PM_UNALIASED (1<<13) /* do not expand aliases when autoloading   */ +#define PM_UNALIASED (1<<13) /* (function) do not expand aliases when autoloading   */    #define PM_HIDE (1<<14) /* Special behaviour hidden by local        */  #define PM_CUR_FPATH    (1<<14) /* (function): can use $fpath with filename */ @@ -1876,31 +1876,30 @@ struct tieddata {  #define PM_TIED  (1<<16) /* array tied to colon-path or v.v.         */  #define PM_TAGGED_LOCAL (1<<16) /* (function): non-recursive PM_TAGGED      */   -#define PM_KSHSTORED (1<<17) /* function stored in ksh form              */ -#define PM_ZSHSTORED (1<<18) /* function stored in zsh form              */ -  /* Remaining flags do not correspond directly to command line arguments */ -#define PM_DONTIMPORT_SUID (1<<19) /* do not import if running setuid */ -#define PM_LOADDIR      (1<<19) /* (function) filename gives load directory */ -#define PM_SINGLE       (1<<20) /* special can only have a single instance  */ -#define PM_ANONYMOUS    (1<<20) /* (function) anonymous function            */ -#define PM_LOCAL (1<<21) /* this parameter will be made local        */ -#define PM_SPECIAL (1<<22) /* special builtin parameter                */ -#define PM_RO_BY_DESIGN (1<<23) /* to distinguish from specials that can be +#define PM_DONTIMPORT_SUID (1<<17) /* do not import if running setuid */ +#define PM_LOADDIR      (1<<17) /* (function) filename gives load directory */ +#define PM_SINGLE       (1<<18) /* special can only have a single instance  */ +#define PM_ANONYMOUS    (1<<18) /* (function) anonymous function            */ +#define PM_LOCAL (1<<19) /* this parameter will be made local        */ +#define PM_KSHSTORED (1<<19) /* (function) stored in ksh form              */ +#define PM_SPECIAL (1<<20) /* special builtin parameter                */ +#define PM_ZSHSTORED (1<<20) /* (function) stored in zsh form              */ +#define PM_RO_BY_DESIGN (1<<21) /* to distinguish from specials that can be      made read-only by the user               */  #define PM_READONLY_SPECIAL (PM_SPECIAL|PM_READONLY|PM_RO_BY_DESIGN) -#define PM_DONTIMPORT (1<<24) /* do not import this variable              */ -#define PM_RESTRICTED (1<<25) /* cannot be changed in restricted mode     */ -#define PM_UNSET (1<<26) /* has null value                           */ -#define PM_REMOVABLE (1<<27) /* special can be removed from paramtab     */ -#define PM_AUTOLOAD (1<<28) /* autoloaded from module                   */ -#define PM_NORESTORE (1<<29) /* do not restore value of local special    */ -#define PM_AUTOALL (1<<29) /* autoload all features in module +#define PM_DONTIMPORT (1<<22) /* do not import this variable              */ +#define PM_RESTRICTED (1<<23) /* cannot be changed in restricted mode     */ +#define PM_UNSET (1<<24) /* has null value                           */ +#define PM_REMOVABLE (1<<25) /* special can be removed from paramtab     */ +#define PM_AUTOLOAD (1<<26) /* autoloaded from module                   */ +#define PM_NORESTORE (1<<27) /* do not restore value of local special    */ +#define PM_AUTOALL (1<<27) /* autoload all features in module    * when loading: valid only if PM_AUTOLOAD    * is also present.    */ -#define PM_HASHELEM     (1<<30) /* is a hash-element */ -#define PM_NAMEDDIR     (1<<31) /* has a corresponding nameddirtab entry    */ +#define PM_HASHELEM     (1<<28) /* is a hash-element */ +#define PM_NAMEDDIR     (1<<29) /* has a corresponding nameddirtab entry    */    /* The option string corresponds to the first of the variables above */  #define TYPESET_OPTSTR "aiEFALRZlurtxUhHTkz"