Hello.

dash have bug for ${#10} and etc: ignores 0... in name (without errors :)

$ foo() { echo "length 10-th arg '${10}' is ${#10}"; }
$ foo a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11
length 10-th arg 'a10' is 2

But need:
length 10-th arg 'a10' is 3


Micro patch attached


--w
vodz
--- parser.c~   2021-02-04 00:51:34.000000000 +0400
+++ parser.c    2021-02-05 12:42:43.616635640 +0400
@@ -1274,7 +1274,7 @@
                        do {
                                STPUTC(c, out);
                                c = pgetc_eatbnl();
-                       } while (!subtype && is_digit(c));
+                       } while ((!subtype || subtype == VSLENGTH) && 
is_digit(c));
                } else if (c != '}') {
                        int cc = c;
 

Reply via email to