tech-userlevel archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: bin/47597: local and $() don't play well with each other


On Tue, Feb 26, 2013 at 05:07:12PM +0700, Robert Elz wrote:
> Why I never complained about this in the past, is that when I researched
> what was supposed to happen in the SUS, I saw this ...  (2.9.5)
>       When a function is executed, it shall have the syntax-error and
>       variable-assignment properties described for special built-in
>       utilities in the enumerated list at the beginning of Special
>       Built-In Utilities.
> And then (2.14)
>       Variable assignments specified with special built-in utilities
>       remain in effect after the built-in completes; this shall not be
>       the case with a regular built-in or other utility.
> That is, in the example above, according to the SUS, after the
>       foo=xxx f
> the result of "echo $foo" (or just 'f' with no leading assignment)
> should be xxx, but with NetBSD it is bar.

Are you using /bin/sh ?

$ cat /tmp/

f() { echo $foo; }
foo=XXX f

$ chmod 755 /tmp/essai
$ /tmp/

Did I misread your mail?
        Thierry Laronde <tlaronde +AT+ polynum +dot+ com>
Key fingerprint = 0FF7 E906 FBAF FE95 FD89  250D 52B1 AE95 6006 F40C

Home | Main Index | Thread Index | Old Index