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=0.0 required=5.0 tests=none autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 4528 invoked from network); 18 Sep 2021 05:02:41 -0000 Received: from 4ess.inri.net (216.126.196.42) by inbox.vuxu.org with ESMTPUTF8; 18 Sep 2021 05:02:41 -0000 Received: from vultr.musolino.id.au ([45.76.123.158]) by 4ess; Fri Sep 17 22:50:56 -0400 2021 Received: from 180.150.113.109 ([180.150.113.109]) by vultr; Sat Sep 18 12:48:06 +1000 2021 Message-ID: To: 9front@9front.org From: Alex Musolino Date: Sat, 18 Sep 2021 12:18:05 +0930 In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: social GPU injection-scale WEB2.0 core firewall Subject: Re: [9front] rc fn weirdness Reply-To: 9front@9front.org Precedence: bulk Quoth Sigrid Solveig Haflínudóttir : > ; fn a/b { echo 123 } > ; a/b > rc: can't open /env/fn#a/b: '/env/fn#a' file does not exist > 123 > ; a/b > 123 > ; du -a /env/ | grep '#a' > 1 '/env//fn#acid' Same thing for variables: ; a/b/c = 333 ; echo $'a/b/c' rc: can't open /env/a/b/c: '/env/a' not a directory 333 ; echo $'a/b/c' 333 ; I guess it's not that weird. It's trying to create a file in a subdirectory of /env which doesn't exist. As for why it only complains about this once, look at /sys/src/cmd/rc/plan9.c:/^addenv; it sets v->[fn]changed = 0 before trying to create the file under /env. The easiest thing to do would just be to disallow '/' in function or variable names.