Hi,

    $ set -x; foo=bar declare arr=( {1..10} )
    + foo=bar
    + declare 'a=(1)' 'a=(2)' 'a=(3)' 'a=(4)' 'a=(5)'
 
    $ touch xy=foo
    $ declare x[y]=*
    + declare 'x[y]=*'
    $ foo=bar declare x[y]=*
    + foo=bar
    + declare xy=foo

This isn't the same bug as the earlier a=([n]=*) issue. Each word (the entire
assignment) is subject to globbing. "let", "eval", and possibly other builtins
appear to randomly use this same kind of expansion regardless of whether they 
are preceded by an assignment, though I can't think of any uses for it. 
Arguments in this case are treated neither as ordinary assignments
nor ordinary expansions.

-- 
Dan Douglas

Reply via email to