--- a/checkbashisms 2017-08-28 08:42:38.000000000 +0200 +++ b/checkbashisms 2017-09-08 19:47:57.154908415 +0200 @@ -440,7 +440,7 @@ # Finally the whole subexpression may be omitted for scripts # which do not pass on their parameters (i.e. after re-execing # they take their parameters (and potentially data) from stdin - .?(\${1:?\+.?)?(\$(\@|\*))?~x) { + .?(\$[{]1:?\+.?)?(\$(\@|\*))?~x) { $ret = $. - 1; last; } elsif (/^\s*(\w+)=\$0;/) { @@ -453,7 +453,7 @@ # As above .?\$$var.?\s* (--\s*)? - .?(\${1:?\+.?)?(\$(\@|\*))?.?\s*\&~x) { + .?(\$[{]1:?\+.?)?(\$(\@|\*))?.?\s*\&~x) { $backgrounded = 1; } elsif ($backgrounded and m~