Great---I've worked around this one for the time being by wrapping the
function in "set +o nounset" / "set -o nounset", but I wouldn't mind
receiving a source code patch for this one as well if it's not too
much trouble.

Thanks,

--
Nathan Weeks
IT Specialist
USDA-ARS Corn Insects and Crop Genetics Research Unit
http://weeks.public.iastate.edu/


On Fri, Jan 3, 2014 at 2:16 PM, David Korn <[email protected]> wrote:
> I have a fix for this bug also.
>
>
> On Thu, Jan 2, 2014 at 1:01 PM, Nathan Weeks <[email protected]> wrote:
>>
>> For the following script, tested with both ksh 2012-08-01 and the
>> 2013-10-08 alpha, a "parameter not set" error is reported for a
>> variable used in a function that isn't even invoked (note that the
>> reported line number is outside the function definition):
>>
>> ========================================
>> $ echo ${.sh.version}
>> Version AIJM 93v- 2013-10-08
>> $ cat test.sh
>> set -o xtrace -o errexit -o nounset
>>
>> typeset -T My_t=(
>>   float x
>> )
>>
>> My_t -a A=( (x=1) (x=2) (x=3) )
>>
>> foo() {
>>   for (( i = 0 ; i < ${#A[@]} ; i++ ))
>>   do
>>     if (( i != 0 && (A[i-1].x != A[i].x) ))
>>     then
>>       echo "A[$i] != A[$((i-1))]"
>>     fi
>>   done
>> }
>> $ ksh test.sh
>> + typeset -lE .sh.type.My_t.x
>> + typeset -T My_t
>> + A[0].x=1
>> + A[1].x=2
>> + A[2].x=3
>> + My_t -a A
>> test.sh: line 7: i: parameter not set
>> ========================================
>>
>> --
>> Nathan Weeks
>> IT Specialist
>> USDA-ARS Corn Insects and Crop Genetics Research Unit
>> http://weeks.public.iastate.edu/
>> _______________________________________________
>> ast-users mailing list
>> [email protected]
>> http://lists.research.att.com/mailman/listinfo/ast-users
>
>
_______________________________________________
ast-users mailing list
[email protected]
http://lists.research.att.com/mailman/listinfo/ast-users

Reply via email to