On 1/13/09, David Korn <dgk at research.att.com> wrote:
> cc:  don.cragun at sun.com  April.Chin at eng.sun.com  shell-discuss at 
> opensolaris.org          ksh93-integration-discuss at opensolaris.org
>  Subject: Re: Re: CR 6791838 Created P3 shell/korn93 *ksh93* unset of a 
> variablewhich   is not set should return 0
>  --------
>
>
>  > Attached (as "ksh93_integration_unset_no_such_var_fix001.diff.txt") is a
>  > prototype patch which fixes the problem (well, most of it, right now $
>  > unset '1' # or $ unset '$' # do not return an error) and adds a new
>  > option ("-e") to get the old behaviour for backwards-compatibilty.
>  >
>  >
>
>
> Why are you trying to merge the testing for whether a variable
>  exists with unset?  Aren't these orthogonal?  Shouldn't they
>  be done independently?
>
>  Currently,
>         [[ ${x+y} ]]
>  will return true if x is set and 1 otherwise, where y can be any non-empty
>  string.

Doesn't [[ ${x+y} ]] expand variable x?
x= ; x.get() { print "hello" ; } [[ ${x+y} ]] ; print $?
prints
hello
0
${x+y} will be a big performance regression if compared to if (unset -e x)

Chris
-- 
    ^---^
   (@)v(@)  Chris Pickett
   |    /   IT consultant
 ===m==m=== pkchris at users.sourceforge.net

Reply via email to