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,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 14292 invoked from network); 21 Nov 2023 18:36:23 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 21 Nov 2023 18:36:23 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1700591783; b=r9CHhw860w7SL0eSosVaAywcOoXW+NrleO1JHoWaBaAmnnvnFyDsCnGp9gXFHFFN8EpeVqfyYL sM4hrMD0mQ6OZSk1L6WvhpcSQGPWKIM17YyBAcfLxc0Sv68XtT/I/2e9sCwdbwUjRgO0dUzOpS rOJCzWUYfFl83dgBKtAWnYh0eNnvsZfHc4Mwy7RA6USbY7NqIvLOvacYLxXAxGgtTVYyrsIjpR pYw3WI73MGgBPKJHPbStIeMwZhQH2tAd3p7ZeJORzo6sK0jbmS8FGDgLBLq7Odo9Epol+R61Zj ByjbRuIX9oADrl6ueFdJcdgegQgRJ21uQsCRNoFxM1jT1A==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-ej1-f47.google.com) smtp.remote-ip=209.85.218.47; 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=1700591783; bh=CfHxvDRqDgKy1QNQz6V4jHAks/MaCyEbDK9UYtdk008=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Transfer-Encoding:Content-Type:Cc:To:Subject: Message-ID:Date:From:In-Reply-To:References:MIME-Version:DKIM-Signature: DKIM-Signature; b=AsyuDQdSff1DWELwMbl281ZX/aPCo3wo/TMYBs4cVZk4ILtjI5Oo2Ea+Z2iPJatnVO0HVT1cWj 5uICJ1exuTcjWm+ypifD3Zr80P4LxvwmDp1IUkNCvvb+g7ehRSLwp6mqgP6DK0e2FhJPym0ZSQ Z5xEvOyYdvBrhicLbtzCH5PblCT8NKeFT+b2bKKsrwp4rsQLWVxmyGjMvMD4T0bjsldWkpNiGA QTfVamfemi0p5qvTqsjMpRkTYW9PFrykEgyoOKog+XUdFfSMmJ1E6t4chRPhHS9/2MlF0pLXc9 qr60MEtOz0b5hPIo6L27y064+r/mIKPu02fS7xIzfr7vXw==; 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-Transfer-Encoding: Content-Type:Cc:To:Subject:Message-ID:Date:From:In-Reply-To:References: MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=CfHxvDRqDgKy1QNQz6V4jHAks/MaCyEbDK9UYtdk008=; b=SvvlJKL72Y0PDZRSwwTYHirKhR D16mT9A0AyaJGKGXIarq10uWNVuGIeIQWTmQ7/sZu34COE4MtQ4ECrIDVBdUDuGn3vSyzy3d22swX /yQt66LISPprV/Q2vSw/m0F+mUji/VJ5wBQcubMaKLV0UfHu6radsjpXVHNh7YdTN9dv9GUiyCFVC IrmfoAWQaU6ZPSAQQnZhMbfcvhEXv8WekDMNtWj9CgcFL8iNdPwmZ1vnIxzqzK97uaccKJhetEHJs CoS7Suoc7fPKvRHyIwvA4cobNqbwx3v0L+R2WeY8jMr27rihsgzvfvW6o8chiHbvjHYi0ngsNDSKl XzSIYkcw==; Received: by zero.zsh.org with local id 1r5Vbh-0008FW-8G; Tue, 21 Nov 2023 18:36:21 +0000 Authentication-Results: zsh.org; iprev=pass (mail-ej1-f47.google.com) smtp.remote-ip=209.85.218.47; 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-ej1-f47.google.com ([209.85.218.47]:54320) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1r5VbQ-0007wO-Em; Tue, 21 Nov 2023 18:36:05 +0000 Received: by mail-ej1-f47.google.com with SMTP id a640c23a62f3a-a00a9d677fcso236392966b.0 for ; Tue, 21 Nov 2023 10:36:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20230601.gappssmtp.com; s=20230601; t=1700591763; x=1701196563; darn=zsh.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=CfHxvDRqDgKy1QNQz6V4jHAks/MaCyEbDK9UYtdk008=; b=hJJRlkuDt9bTtIZa+w5JQ7aUkC618p09cU0bA6uqADVzSwlwNWnShURNgfvHvvrbCR z6u0kiXm+NUV4uunaZ8W9EqrZo+grLYVCvvH8y/oEW/sWOdeQyccmjb0kgl8T4Bx4hh9 GyZsOs5jnI+OxqATxMXqXN64km/TWqWgdlVJ5kKzIQ55kvtz00XDrygb5iVfqqyF4o45 urMq/xrEqpnDzXUEqNUh0fzMy/fNVxv5hT1IJivDwjh9YjkoKXmqhYFIlU2wct1KWdOD RGS6oSe65P+NNof9GiySTv5S0k4RYD32NWv/YhZDe3pd+uKRhCDRj93rFHlTMgxWCY/P aZxA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700591763; x=1701196563; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CfHxvDRqDgKy1QNQz6V4jHAks/MaCyEbDK9UYtdk008=; b=kosDfInSMgPM68BjUYecyQ1bg2RVAH2I90aKRXU/nYtQKLn+v9iyXWaNMGQUsLmORC PCMCZ10SZipDOluYxj10UbN3+gjUsEgVqlQvh52UUu35v5OIjBh/y9onDyehBbOuQIwU mnAUoQB3HcpP1LIe0/mafVjA6ohbYu714eq52xH4icD77BfeE28qgaJPrhKHsg2fJkuo gM1SLeAYFIiNkcE4slAOxNmgqvuq+JKdK6oHoUvksxv4sf3vtYmWYUpKROnGIwGa+MGh 68Jpa/QsxS5jh7EqAkZjnuAN5KBSNoYx0lDQk8meQ3hNcs1TMNX+R9L8lygzaNX9/g7+ vEXg== X-Gm-Message-State: AOJu0YzrrPIjNhHeRKPS0KdXOu435jtIUoXczzAgsS84LVxLybLtD2FC mUqkcHQc/+0AA253O6ySuNx+6zU8mQE7B0gAFL4rHgCNLrhhyyuu X-Google-Smtp-Source: AGHT+IGO3nW0QOy+/Rvd2/08VU0FbPRBZv5hCDL1MZT9AeyDL7mIX9RsLRW3w5ndDvOtTvUgVSQEVVs0205Ax3r3rfg= X-Received: by 2002:a17:906:51d8:b0:a02:a2cc:66b5 with SMTP id v24-20020a17090651d800b00a02a2cc66b5mr1635542ejk.76.1700591763236; Tue, 21 Nov 2023 10:36:03 -0800 (PST) MIME-Version: 1.0 References: <37aad408d2bbe8d7738f77e9cfd1f1dc@chazelas.org> In-Reply-To: <37aad408d2bbe8d7738f77e9cfd1f1dc@chazelas.org> From: Bart Schaefer Date: Tue, 21 Nov 2023 10:35:51 -0800 Message-ID: Subject: Re: nameref and argv To: Stephane Chazelas Cc: zsh-workers@zsh.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Seq: 52319 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: On Tue, Nov 21, 2023 at 2:27=E2=80=AFAM Stephane Chazelas wrote: > > $ ./Src/zsh -c 'f() { nameref a=3Dargv; g x y; }; g() { echo $a; }; f a b= c' > x y > > I was expecting to see "a b c" there Although argv acts like a local, it's actually a global special, so you always get the special behavior even when accessing through a nameref. I thought I'd mentioned this somewhere in the doc but perhaps not. Underneath, argv ends up being a pointer into the C stack, so there's no way to get a reference to it from a called function up to the caller.