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 15015 invoked from network); 15 Sep 2023 22:23:06 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 15 Sep 2023 22:23:06 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1694816586; b=ODbNXvM/MZ6J6DsVeVqDG01pRx3zjNr1GsWuVB34EVpZF5J86i+PbEZJQG0gMjqKa3q9MA+XqS WySsy7ccXaCOc0Qeb213AHCcTIdI7M1JjdRgUQYwQ4SwbIm27S60kn9LcnTb4sCaSo1A0hqIcp 81y/4G+DRZtRb73FjdSoSoa7mAarXLB07nXsnJ5KU9OGiKnA2PhUuGZQzjAJB1RFKCg1iOXYJb FWX+lWTpJvJyD0IOvFs9+S+mLGy0x+SAUrLaiyFOn7EuRPxoXDqVUrGQMIsxdqpSHeoXtgF7A6 EBvmA9oS3ACNPOx+5m6MjNxIFEggcG/SNEW0AAFJyilAgA==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-ej1-f51.google.com) smtp.remote-ip=209.85.218.51; 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=1694816586; bh=RQklBTvo9P8UYJ7RWq7aDiCBesn96/xWT1InBYTh9Ak=; 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=ZRDiHDe3HH3lEeX0Cyvn39t4dCUkUzunpNjGHI6nrcnwivPl47zl760+CJ/CUP3F7S5reYRx0K oPr5XpVR2RhMkEAaJ7sorVxHdW9TSl10aEBFwbuyBpuTmv1zLIlycARMjpo3s4HUWv3aqHF32W 3Y6JF2Y+IaCXk5XR/9iSFFdOkzKXerr5OV0HAQj5wJL+a4g+SxVf5Ftia2PsXJIxDA7OwWLUjl xIu3CE6uWVIDaLbrpmE6tFSDwbL+I2HcVvs2IM2LqUao4K/1FdTMwaeuKWAVOe9+jviEs3jpRt d59P+G9eDclRheZey9EUHCJm4hsAATATAY9WLui68bij4A==; 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=yYXjWsHkgfYBquRzOKM+z8AKF/w1/e89c3ewMqLAy90=; b=QZg0MA0qWS76a9uLHP/TbKzCwb uvQuys5TH29LJ+uOQnepQZYoaAy1WgYRkMVYKmrhow6JR2l6gfRTHAxVogXQWGicbcM4cf4833Axv 2t72D6vBV0fBwZncew4DLWs+T26m2m/IDLplglETd3ozsmGn4uHxjh22kB+KD0zms6IBfHhpiGXwb TRPZe8gZYTAkan5GGcU2RbiCYFvW+2iKGC7q75GpjW5yRXkeJkLMo5tiYOM7M8YPlAsK0MfFkENjd scRGK4WPaHka+2CHfy5DZ26XlnIfwSZcTWrrRf2bBOd1ZIDdrXSFOu8sELoAW54yH8I1LSuNu7P3i dkjqzB8Q==; Received: by zero.zsh.org with local id 1qhHDL-0002i4-FY; Fri, 15 Sep 2023 22:23:03 +0000 Authentication-Results: zsh.org; iprev=pass (mail-ej1-f51.google.com) smtp.remote-ip=209.85.218.51; 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-f51.google.com ([209.85.218.51]:62524) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1qhHCn-0002Nu-Pl; Fri, 15 Sep 2023 22:22:30 +0000 Received: by mail-ej1-f51.google.com with SMTP id a640c23a62f3a-9a9d6b98845so813667766b.0 for ; Fri, 15 Sep 2023 15:22:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20230601.gappssmtp.com; s=20230601; t=1694816549; x=1695421349; 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=yYXjWsHkgfYBquRzOKM+z8AKF/w1/e89c3ewMqLAy90=; b=E2uuM540n/EUcahMn5deehrsbtDclwnXLxDMrVSMAsXd5xYC61hIjgj4oiwI9dLEIX skMWPsDcPaN2YiuYIORRoVGtBYK85qP5IHf7H/MV8HuO/IFpbHNknj497LURtDAkIwnM oXLQDZPuGCey6ZuxMaEzbtUR7CQPPqKBCUOKoCpriPDLSAO9nBVrpdUzPOTxAojioedZ 6bm3fiM+4ncz73sfphcB8VkTuVW4FheG3ed8mwtCFwuRJONDZUUfoO5gFxmpvm97QkHL hAVabpOvwvVJMbtO0+7/i/dAMot16sJ1BOnEDfg7iRnSlr1/+zMi5lZ8V+YRMyLwy1P6 FgYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694816549; x=1695421349; 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=yYXjWsHkgfYBquRzOKM+z8AKF/w1/e89c3ewMqLAy90=; b=CaEZ0TLZgBSi0j9k0fOr67QXxTffKV8rnJMdzmtqdVYxzTr/wABpB5LjMD8RgCDooy A42kkMmjMyzqY3EovP+CjIe9lW4oKQihZD4p6lBcLD3+cKfP9lM3qM30rlykiFoH7B0U AWxd5kk7OevMdNSyUFUU0JUS8NmCkAESSXoC2HFps+Z0ktnaTl2Rna2EpTsBqkyxcHEf 7MNK4H7B7JWGrg1llRYhEbofyq43zgRAQ/jd1AxmJb9gu0J93ZHVOM6NNUC8PNeG2vC0 eEm5uv176tguji2GMM5ez9q7LJH8cemYjsSrolWrB6P/o5Lp/R7UPiiAiWttwoZAyh9s kKCw== X-Gm-Message-State: AOJu0YwJa0efFe2t2EkNnkdV4rnl4cJAMd8QXuqVM6hYy1UodDbDdF6A oVKES2sMiBxare/SI11Xsi8ZgHY5ecWR7hMb3O7DLQ== X-Google-Smtp-Source: AGHT+IHCewMU7XYbd9RJEDeXXQ+f3IoJqLq9Ylp3Z9DvbABRUSDQJpJgVzSIJr6GVYg/nyJhE0vxzJlnwqrnos68LFo= X-Received: by 2002:a17:906:304e:b0:9ad:c79d:2a23 with SMTP id d14-20020a170906304e00b009adc79d2a23mr3967384ejd.36.1694816548678; Fri, 15 Sep 2023 15:22:28 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Bart Schaefer Date: Fri, 15 Sep 2023 15:22:17 -0700 Message-ID: Subject: [PATCH] ? Parse error does not always set $? (Was: Bug? Output not flushed?) To: Mikael Magnusson Cc: Zsh hackers list Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Seq: 52149 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 Fri, Sep 15, 2023 at 10:30=E2=80=AFAM Bart Schaefer wrote: > > Unless something is actually aborting the $(...) Ah, part of the problem is upstream. Is there any reason parse_string() should be discarding errflag? All tests still pass with this change: diff --git a/Src/exec.c b/Src/exec.c index 3a8b3e951..f6902fd39 100644 --- a/Src/exec.c +++ b/Src/exec.c @@ -286,6 +286,7 @@ parse_string(char *s, int reset_lineno) { Eprog p; zlong oldlineno; + int xerrflag; zcontext_save(); inpush(s, INP_LINENO, NULL); @@ -299,7 +300,9 @@ parse_string(char *s, int reset_lineno) lastval =3D 1; strinend(); inpop(); + xerrflag =3D errflag; zcontext_restore(); + errflag =3D xerrflag; return p; } That's not the only thing that was needed for the original nofork problem, but the rest isn't relevant here.