From 273d669a568ed9ee705916e42945f4239501cdcb Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Thu, 12 Dec 2019 10:22:24 +0000 Subject: 45001: Fix zero-length matches with ${...%...} As the shortest match is preferred, zero-length matches beat any other. --- Test/D04parameter.ztst | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'Test') diff --git a/Test/D04parameter.ztst b/Test/D04parameter.ztst index b6e85a9fe..c91af1a9c 100644 --- a/Test/D04parameter.ztst +++ b/Test/D04parameter.ztst @@ -2534,3 +2534,26 @@ F:behavior, see http://austingroupbugs.net/view.php?id=888 0:Global variables are not trashed by "foo=bar builtin" (regression test) >function-value >global-value + + foo=pws + print ${foo%*} +0:Smallest match at end can match zero-length string +>pws + + foo=pws + print ${foo%?} +0:Smallest match at end with a character always matches one +>pw + + setopt extendedglob + foo=pws + print ${foo%s#} + print ${foo%%s#} +0:Smallest / largest match with non-trivial closure +>pws +>pw + + foo=pws + print ${foo%%*} +0:Largest match at end matches entire string +> -- cgit 1.4.1