From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 18604 invoked from network); 5 Sep 2023 03:53:06 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 5 Sep 2023 03:53:06 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1693885986; b=FdndK0K+5TsGs1pLOGpN5Evtc1XdYOlqFISFTN2GZC44MWeSsPfPkrxAZK6PkWKtOHjfvG3nH7 4p6/jgUl3mY3e6bEuQESPwYj9G4TSrql4F7kyjWwyYmHj9iNG2n/C9/oYxyuDEC/gfJMlx5P6V Xfq9BMKLE6UItHrC4HOWuzuaBx42WF5dA1ax4ZS76g+kOr11dhFcak3r6B+M7laATBDNfG5+mB to6ElELOtP189cJve6mW7Q7Xz0Vy5eMUMeu9uIfpa8maMGDUeZtfsqtiqfvJm4r2zqFUSO8FhT ax6WzvPNxUfNy/EoRoGwliUC8mg64okDK08VMmXsgvcEbQ==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-lj1-f175.google.com) smtp.remote-ip=209.85.208.175; dkim=pass header.d=brasslantern-com.20230601.gappssmtp.com header.s=20230601 header.a=rsa-sha256; dmarc=none header.from=brasslantern.com; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1693885986; bh=ik6dDaO2h7L+SGhIsA6cAN6DLF6INWhYiNqa5oxsB4o=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Type:To:Subject:Message-ID:Date:From:MIME-Version: DKIM-Signature:DKIM-Signature; b=GbKvVxfkAkrxGKwXaATXs5wMEYNStBFAaRYwFit70yhzqQ/t6zhmn2y/61qSp3NSj41j2imnwI h8/y22+t/3dod24pFIf+s7jVsD14fd4vdUiUNixbGw1BYYr4qO9lRbKJb0hGhkFcWLXkMfdA+p 6hl5xsEbEvvS1zMyNjmOjUYeb9UNT+SnSnK0/N2Q1DMlIriULIXkkYKqB5ICZxUBDS72ZlH4YA CB+PQBQkcJfIFC04vHGLBe7vtqdSS2UeZhuCSNyQpzdYJxUIvrxqItlVz4pmQ9zgNE+CfgpGme Pa3Vpkp9VXcfQWEjld1STaVt1rG6C2zGGmKWhw2CW/Espw==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20210803; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:Content-Type:To:Subject:Message-ID: Date:From:MIME-Version:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References; bh=o5qWoHIhHSPVa2j8tcPHuFaiOuwkJpX6kt0Rm9MAcF0=; b=NxCZHfrOBRfynGRlh03+FEx230 fl7o8kD//GwSZutGO63Lik07nJ2jq9FZK8AqhzUWDlLUoVPR5H7dTVabcxPqva7lsEUuOFU6q1Hjt A8YNVxHjbOeihGaB7A5aZgYs/bU08xML8xEr3B4cWgoXihXhB+28DRkjmOAHJ1ZmAs2Xsk1aDTu/1 zrbY7uP9qo323k52ETQJl3mzgvjIDwPNxRGOSQML6pJEyJ8u7IwR+IYbGJV9JBaeyN9pyfpAfztm2 lm1C6N0N7B0HQfHHBFSwNF1AXxkK4pmSZN/ev/ERZd+jsVC8LjeQPSXFJlzsD45CFm/g9i1dKvk07 wphB2ccA==; Received: by zero.zsh.org with local id 1qdN7f-000GA6-Ow; Tue, 05 Sep 2023 03:53:03 +0000 Authentication-Results: zsh.org; iprev=pass (mail-lj1-f175.google.com) smtp.remote-ip=209.85.208.175; dkim=pass header.d=brasslantern-com.20230601.gappssmtp.com header.s=20230601 header.a=rsa-sha256; dmarc=none header.from=brasslantern.com; arc=none Received: from mail-lj1-f175.google.com ([209.85.208.175]:52281) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1qdN7H-000Fpr-A7; Tue, 05 Sep 2023 03:52:45 +0000 Received: by mail-lj1-f175.google.com with SMTP id 38308e7fff4ca-2b962535808so31108071fa.0 for ; Mon, 04 Sep 2023 20:52:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20230601.gappssmtp.com; s=20230601; t=1693885958; x=1694490758; darn=zsh.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=o5qWoHIhHSPVa2j8tcPHuFaiOuwkJpX6kt0Rm9MAcF0=; b=CS8Q8kxLRQhij4YlQWe1eNhmZUjWkTixU4BFMeRXzogJ8Zd+4hB0iv3Z53hvLj5PG6 CaMjfOc4qTsOSqBoH4ceEbvDv1uYHFm2qhws/cDrTSu1uxVlag0g7g35wrjFGvEtqaCS HbBvrvMpoTGn9Ho/0QsEAsHZ9ElIm0XoTkj3NcXXxtBMSc/BOhJGVlbZvrdf4Kf0W/qA 4WWRgz1agsRcMs/cCMgyjW0z5eWX0h89E3ndkz1a94vKQ3kgA5Y1IEK/4UVQCFWoTfO1 Dwr5LZVhHmKFkIE8jaQ2sTjarcMsBhYc7NtHHvjqw5ZYPq0xqG0+P2Dp0faeGt/4ADCN Khdw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693885958; x=1694490758; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=o5qWoHIhHSPVa2j8tcPHuFaiOuwkJpX6kt0Rm9MAcF0=; b=Q10JKu0j4/PpSQljuqrC78p1v/fGr0z8RudXATtdCahszdX7XuBFodb8qpPDZX0T9H sqtyP462/2wLA2KNRl7t0ofT4Fsz8C5XpWWz/9jHkQaG+XajbL3qVerEW4OwwF8c8U+v hT0eVmtiTgdVgLvWsavg0apaYhYdfh6RhhNYHaAF+dh194rC5UT72f73tRDKko0FSKZf NRAQJmZak9gsvcKJTLCsMDBWNs9b5F0adazdPdUYliRY2FRC3U5A8KcDtDbzW/esorab rrDjMwH4C1Up/FLh+uiRqhxxssAThHw8KieP8InFLvxbKLRW1isG0ibTUNb95UH5+Usa InOQ== X-Gm-Message-State: AOJu0Yz7vmXKSaPTWYOFZTCz+QuNrB3Tp0s6/Of2Essy7gMLNpUXFS1p PXz0KvcYpm6xjXHItF8ZX5Fu+gdMXOuVGiGNoR5U8GRNNbXsWmGx X-Google-Smtp-Source: AGHT+IEfNtlpksRWXeQLuEAX4d57kGV8N2BQuoGl20Pq2SPAp4gXdCP3pgqq4LlBjBzJCPDa5QjUk/vaer7WqWopBwo= X-Received: by 2002:a2e:b70d:0:b0:2bd:21c1:3e4 with SMTP id j13-20020a2eb70d000000b002bd21c103e4mr7837796ljo.34.1693885957880; Mon, 04 Sep 2023 20:52:37 -0700 (PDT) MIME-Version: 1.0 From: Bart Schaefer Date: Mon, 4 Sep 2023 20:52:27 -0700 Message-ID: Subject: [PATCH] Declaring the same variable "private" more than once To: Zsh hackers list Content-Type: multipart/mixed; boundary="000000000000cfe9430604948eb2" X-Seq: 52115 Archived-At: X-Loop: zsh-workers@zsh.org Errors-To: zsh-workers-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-workers-request@zsh.org X-no-archive: yes List-Id: List-Help: , List-Subscribe: , List-Unsubscribe: , List-Post: List-Owner: List-Archive: --000000000000cfe9430604948eb2 Content-Type: text/plain; charset="UTF-8" Given that it's relatively harmless to do something like for x in * do local y=$x:r # etc. done It occurred to me that it should similarly be possible to do that with "local -P" or "private", but without the appended patch that generates a warning message and leaves $y unchanged without aborting the loop. With the below it remains an error to try to change the type of a private parameter (and that is an actual error rather than just a warning, like most other typeset errors) but simply reassigning something of the same type is allowed. --000000000000cfe9430604948eb2 Content-Type: text/plain; charset="US-ASCII"; name="reset-private.txt" Content-Disposition: attachment; filename="reset-private.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lm5rvjup0 ZGlmZiAtLWdpdCBhL1NyYy9Nb2R1bGVzL3BhcmFtX3ByaXZhdGUuYyBiL1NyYy9Nb2R1bGVzL3Bh cmFtX3ByaXZhdGUuYwppbmRleCA4ZTA0YjJiOTUuLjdlZjY2MzNkYSAxMDA2NDQKLS0tIGEvU3Jj L01vZHVsZXMvcGFyYW1fcHJpdmF0ZS5jCisrKyBiL1NyYy9Nb2R1bGVzL3BhcmFtX3ByaXZhdGUu YwpAQCAtODcsOSArODcsNTIgQEAgbWFrZXByaXZhdGUoSGFzaE5vZGUgaG4sIFVOVVNFRChpbnQg ZmxhZ3MpKQogCSAgICAgICgocG0tPm5vZGUuZmxhZ3MgJiAoUE1fU1BFQ0lBTHxQTV9SRU1PVkFC TEUpKSA9PSBQTV9TUEVDSUFMICYmCiAJICAgICAgIC8qIHR5cGVzZXRfc2luZ2xlKCkgbGluZSAy MzAwIGRpc2NhcmRzIFBNX1JFTU9WQUJMRSAtLSB3aHk/ICovCiAJICAgICAgICFpc19wcml2YXRl KHBtLT5vbGQpKSkpKSB7Ci0JICAgIHp3YXJubmFtKCJwcml2YXRlIiwgImNhbid0IGNoYW5nZSBz Y29wZSBvZiBleGlzdGluZyBwYXJhbTogJXMiLAotCQkgICAgIHBtLT5ub2RlLm5hbSk7Ci0JICAg IG1ha2Vwcml2YXRlX2Vycm9yID0gMTsKKwkgICAgaWYgKGlzX3ByaXZhdGUocG0tPm9sZCkpIHsK KwkJaWYgKHBtLT5vbGQtPm5vZGUuZmxhZ3MgJiBQTV9SRUFET05MWSkgeworCQkgICAgemVycigi cmVhZC1vbmx5IHZhcmlhYmxlOiAlcyIsIHBtLT5ub2RlLm5hbSk7CisJCSAgICBtYWtlcHJpdmF0 ZV9lcnJvciA9IDE7CisJCX0gZWxzZSBpZiAoKHBtLT5ub2RlLmZsYWdzIHwgcG0tPm9sZC0+bm9k ZS5mbGFncykgPT0KKwkJICAgIHBtLT5vbGQtPm5vZGUuZmxhZ3MpIHsKKwkJICAgIC8qIHByaXZh dGUgY2FsbGVkIHR3aWNlIG9uIHNhbWUgcGFyYW1ldGVyICovCisJCSAgICBQYXJhbSB0cG0gPSBw bTsKKwkJICAgIHBtID0gcG0tPm9sZDsKKwkJICAgIC0tbG9jYWxsZXZlbDsKKwkJICAgIC8qIHdo eSBoYXZlIGEgdW5pb24gaWYgd2UgbmVlZCB0aGlzIHN3aXRjaCBhbnl3YXk/ICovCisJCSAgICBz d2l0Y2ggKFBNX1RZUEUocG0tPm5vZGUuZmxhZ3MpKSB7CisJCSAgICBjYXNlIFBNX1NDQUxBUjoK KwkJCXBtLT5nc3Uucy0+c2V0Zm4ocG0sIHRwbS0+dS5zdHIpOworCQkJdHBtLT51LnN0ciA9IE5V TEw7CisJCQlicmVhazsKKwkJICAgIGNhc2UgUE1fSU5URUdFUjoKKwkJCXBtLT5nc3UuaS0+c2V0 Zm4ocG0sIHRwbS0+dS52YWwpOworCQkJYnJlYWs7CisJCSAgICBjYXNlIFBNX0VGTE9BVDoKKwkJ ICAgIGNhc2UgUE1fRkZMT0FUOgorCQkJcG0tPmdzdS5mLT5zZXRmbihwbSwgdHBtLT51LmR2YWwp OworCQkJYnJlYWs7CisJCSAgICBjYXNlIFBNX0FSUkFZOgorCQkJcG0tPmdzdS5hLT5zZXRmbihw bSwgdHBtLT51LmFycik7CisJCQl0cG0tPnUuYXJyID0gTlVMTDsKKwkJCWJyZWFrOworCQkgICAg Y2FzZSBQTV9IQVNIRUQ6CisJCQlwbS0+Z3N1LmgtPnNldGZuKHBtLCB0cG0tPnUuaGFzaCk7CisJ CQl0cG0tPnUuaGFzaCA9IE5VTEw7CisJCQlicmVhazsKKwkJICAgIH0KKwkJICAgICsrbG9jYWxs ZXZlbDsKKwkJICAgIGlmICghKHRwbS0+bm9kZS5mbGFncyAmIFBNX1VOU0VUKSkKKwkJCXBtLT5u b2RlLmZsYWdzICY9IH5QTV9VTlNFVDsKKwkJfSBlbHNlIHsKKwkJICAgIHplcnJuYW0oInByaXZh dGUiLAorCQkJICAgICJjYW4ndCBjaGFuZ2UgdHlwZSBvZiBwcml2YXRlIHBhcmFtOiAlcyIsCisJ CQkgICAgcG0tPm5vZGUubmFtKTsKKwkJICAgIG1ha2Vwcml2YXRlX2Vycm9yID0gMTsKKwkJfQor CSAgICB9IGVsc2UgeworCQl6ZXJybmFtKCJwcml2YXRlIiwgImNhbid0IGNoYW5nZSBzY29wZSBv ZiBleGlzdGluZyBwYXJhbTogJXMiLAorCQkJcG0tPm5vZGUubmFtKTsKKwkJbWFrZXByaXZhdGVf ZXJyb3IgPSAxOworCSAgICB9CiAJICAgIHJldHVybjsKIAl9CiAJc3RydWN0IGdzdV9jbG9zdXJl ICpnc3UgPSB6YWxsb2Moc2l6ZW9mKHN0cnVjdCBnc3VfY2xvc3VyZSkpOwpkaWZmIC0tZ2l0IGEv VGVzdC9WMTBwcml2YXRlLnp0c3QgYi9UZXN0L1YxMHByaXZhdGUuenRzdAppbmRleCBiODc2ZjU0 OGQuLmQ5MDJjYWM1NiAxMDA2NDQKLS0tIGEvVGVzdC9WMTBwcml2YXRlLnp0c3QKKysrIGIvVGVz dC9WMTBwcml2YXRlLnp0c3QKQEAgLTM4NCw2ICszODQsMjMgQEAgRjpTaG91bGQgd2UgYWxsb3cg InB1YmxpYyIgbmFtZXJlZnMgdG8gcHJpdmF0ZSBwYXJhbWV0ZXJzPwogIH0KIDA6cmVncmVzc2lv biB0ZXN0IGZvciB1bnNldCBwcml2YXRlCiAKKyAoKSB7CisgICBwcml2YXRlIHg9MQorICAgdW5z ZXQgeAorICAgcHJpdmF0ZSB4PTIKKyAgIHByaW50ICR4CisgfQorMDpwcml2YXRlIG1heSBiZSBj YWxsZWQgdHdpY2UKKz4yCisKKyAoKSB7CisgICBwcml2YXRlIHg9MQorICAgcHJpdmF0ZSAtYSB4 CisgICBwcmludCAkeAorIH0KKzE6cHJpdmF0ZSBtYXkgbm90IGNoYW5nZSBwYXJhbWV0ZXIgdHlw ZQorPyhhbm9uKTpwcml2YXRlOjI6IGNhbid0IGNoYW5nZSB0eXBlIG9mIHByaXZhdGUgcGFyYW06 IHgKKwogJWNsZWFuCiAKICAgcm0gLXIgcHJpdmF0ZS5UTVAK --000000000000cfe9430604948eb2--