From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: 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,FREEMAIL_FROM,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 6831f23b for ; Wed, 24 Jul 2019 08:03:36 +0000 (UTC) Received: (qmail 12255 invoked by alias); 24 Jul 2019 08:03:27 -0000 Mailing-List: contact zsh-users-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Users List List-Post: List-Help: List-Unsubscribe: X-Seq: 24094 Received: (qmail 23253 invoked by uid 1010); 24 Jul 2019 08:03:26 -0000 X-Qmail-Scanner-Diagnostics: from mail-lj1-f176.google.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.101.2/25517. spamassassin: 3.4.2. Clear:RC:0(209.85.208.176):SA:0(-2.0/5.0):. Processed in 2.277855 secs); 24 Jul 2019 08:03:26 -0000 X-Envelope-From: apenwarr@gmail.com X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Received-SPF: pass (ns1.primenet.com.au: SPF record at _netblocks.google.com designates 209.85.208.176 as permitted sender) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=UGybyUunMEH1RkBDuQx29HJ/oFKMaQtGSKm9NZZjT9s=; b=lzOPlc1OqHkcdVmL+us3HBJfTQT5cikQmhdEp3ly9kWuPsyxOGf+omb67zNmhxnAA1 aSDgsJt6ff2FTF8IN1Jeq2G15MuFDC2QhT2ztJDvug8AalND70GHc0U+G7Vqegi8Y10c K2Hnru3VIU9a4AQbcjPL7p5n4fnayXR3y4yycynm+kElbFEuSwKRAN+OCU6kRyLEJAZA Jey8l2we1kck8iI5ynGB8ReGkagYuXWRjKLhPwgiG9RmOwlHcFJEAbrZ6TUTixADSYxq Fw1XCUhCxm+NrjxHYnsHWwX+KeZR11t9En/Tt0xUGn+DK7VcMafyZizBhM3zNedj/P7H 88nQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=UGybyUunMEH1RkBDuQx29HJ/oFKMaQtGSKm9NZZjT9s=; b=sEcEUja+gO/tMuuxbjSC0APNAraKnxHW2X91Th/bCTf8qr3m1cVOmQ+Ah6JovcGyp5 LMLK0xueHMMjZKhFxJjDjGjyQcTv+L/JzclbQqSuLZJI6Cyuh/kENJxHP99bfX5GqQDb xkZrr1D5AQ7KxRetyJpQ1/ZUtDp9YmPjPa+W0v9dxFsU7wDHFu9yRA4ozebXu5XYSRLk oRKZb6MlsRjPANYx4k3GSawDtVAroCYRU5ZukfIf1SGIAF5KhFCLn3yLztcAqE+Y9APe Q5LHCJeOuskxn5p1hUVgqamDn3ejyoH5LRSjh97qRNBSkYtjCQWNmUkxRsRsaddrTIlM uKfw== X-Gm-Message-State: APjAAAVi495c/WA6AAwh6TVBwdVyt1vOZFlRxVgFpuVZXPg0BCBezgf7 Fao9q5fEVucMvgGyXAS0mYHJM/9ivSwpvEBDmQc/M0UImAcncQ== X-Google-Smtp-Source: APXvYqzFnyBIQp35Y9UTNgtecPBz9afgnBNNENLv0suRov7SBsmS+QEz8FOlEgsD6oPiRJtBbiT0wU61M8tWIZRy0D0= X-Received: by 2002:a2e:8650:: with SMTP id i16mr42449054ljj.178.1563955369659; Wed, 24 Jul 2019 01:02:49 -0700 (PDT) MIME-Version: 1.0 From: Avery Pennarun Date: Wed, 24 Jul 2019 04:02:38 -0400 Message-ID: Subject: zsh in sh compatibility mode splits IFS slightly differently from other shells To: zsh-users@zsh.org Content-Type: text/plain; charset="UTF-8" Hi all, I think this may be a known bug, as you can see it documented here: https://www.in-ulm.de/~mascheck/various/ifs/ However, it bit users of one of my scripts lately (https://github.com/apenwarr/redo/blob/master/minimal/do) because it was accidentally depending on the non-sh behaviour. Simple test: emulate sh x="/a/b/c/" IFS=/ f() { echo "$2" "$#" } f $x On zsh, this prints: a 5 on bash, dash, mksh, ksh93, and posh (at least), this prints: a 4 I've already worked around the problem in my script, but it would be nice if nobody ever has to experience this again. Would it be possible to change zsh to match other shells' behaviour, at least when in sh compatibility mode? Thanks, Avery