Bug#473019: debian-policy: clarification needed for "local" builtin exception for /bin/sh
Daniel Kahn Gillmor <dkg-debian.org@fifthhorseman.net> writes:
> Package: debian-policy
> Version: 3.7.3.0
> Severity: normal
> Tags: patch
>
> The "scripts" section of chapter 10 is somewhat ambiguous about
> whether declaring multiple local variables is acceptable or not:
>
> file:///usr/share/doc/debian-policy/policy.html/ch-files.html#s-scripts
The intention when I originally wrote the text was to not allow declaring
multiple variables with one local line, since at the time I was told that
some shells didn't support this.
I think your first patch is therefore correct and intend to apply it
unless someone tells me that my understanding of shellology is incorrect.
> [0 dkg@squeak debian-policy-3.7.3.0]$ diff -u policy.sgml{,.conservative}
> --- policy.sgml 2008-03-27 14:52:16.000000000 -0400
> +++ policy.sgml.conservative 2008-03-27 14:55:37.000000000 -0400
> @@ -6793,11 +6793,11 @@
> <item><tt>test</tt>, if implemented as a shell built-in, must
> support <tt>-a</tt> and <tt>-o</tt> as binary logical
> operators.</item>
> - <item><tt>local</tt> to create a scoped variable must be
> - supported; however, <tt>local</tt> may or may not preserve
> - the variable value from an outer scope and may or may not
> - support arguments more complex than simple variables. Only
> - uses such as:
> + <item><tt>local</tt> to create a single scoped variable
> + must be supported; however, <tt>local</tt> may or may
> + not preserve the variable value from an outer scope and
> + may or may not support arguments more complex than a
> + single simple variable. Only uses such as:
> <example compact>
> fname () {
> local a
--
Russ Allbery (rra@debian.org) <http://www.eyrie.org/~eagle/>
Reply to: