@@ -274,13 +274,13 @@ _upvars()
274274# unchanged. ]
275275_comp_array_filter ()
276276{
277- local __comp_flags =' ' __comp_pattype =' ' __comp_anchoring =' '
278- local OPTIND=1 OPTARG=' ' OPTERR=0 __comp_opt =' '
279- while getopts ' EFGpsmrC' __comp_opt " $@ " ; do
280- case $__comp_opt in
281- [EFG]) __comp_pattype= $__comp_opt ;;
282- [psm]) __comp_anchoring= $__comp_opt ;;
283- [rC]) __comp_flags= $__comp_opt$__comp_flags ;;
277+ local _comp_local_flags =' ' _comp_local_pattype =' ' _comp_local_anchoring =' '
278+ local OPTIND=1 OPTARG=' ' OPTERR=0 _comp_local_opt =' '
279+ while getopts ' EFGpsmrC' _comp_local_opt " $@ " ; do
280+ case $_comp_local_opt in
281+ [EFG]) _comp_local_pattype= $_comp_local_opt ;;
282+ [psm]) _comp_local_anchoring= $_comp_local_opt ;;
283+ [rC]) _comp_local_flags= $_comp_local_opt$_comp_local_flags ;;
284284 * )
285285 echo " bash_completion: $FUNCNAME : usage error" >&2
286286 return 2
@@ -296,58 +296,58 @@ _comp_array_filter()
296296 elif [[ $1 != [a-zA-Z_]* ([a-zA-Z_0-9]) ]]; then
297297 printf ' bash_completion: %s: %s\n' " $FUNCNAME " " invalid array name '$1 '." >&2
298298 return 2
299- elif [[ $1 == @ (__comp_ * | OPTIND| OPTARG| OPTERR) ]]; then
299+ elif [[ $1 == @ (_comp_local_ * | OPTIND| OPTARG| OPTERR) ]]; then
300300 printf ' bash_completion: %s: %s\n' " $FUNCNAME " " array name '$1 ' is reserved for internal uses." >&2
301301 return 2
302- elif [[ ! $__comp_pattype && $1 == value ]]; then
302+ elif [[ ! $_comp_local_pattype && $1 == value ]]; then
303303 printf ' bash_completion: %s: %s\n' " $FUNCNAME " " array name '$1 ' cannot be used for the predicate." >&2
304304 return 2
305305 fi
306306 # When the array is empty:
307307 eval " ((\$ {#$1 [@]}))" || return 0
308308
309- local __comp_predicate =' ' __comp_pattern =$2
310- case $__comp_pattype in
309+ local _comp_local_predicate =' ' _comp_local_pattern =$2
310+ case $_comp_local_pattype in
311311 E)
312- __comp_predicate =' [[ $__comp_value == $__comp_pattern ]]'
312+ _comp_local_predicate =' [[ $_comp_local_value =~ $_comp_local_pattern ]]'
313313 ;;
314314 F)
315- case $__comp_anchoring in
316- p) __comp_predicate =' [[ $__comp_value == "$__comp_pattern "* ]]' ;;
317- s) __comp_predicate =' [[ $__comp_value == *"$__comp_pattern " ]]' ;;
318- m) __comp_predicate =' [[ $__comp_value == *"$__comp_pattern "* ]]' ;;
319- * ) __comp_predicate =' [[ $__comp_value == "$__comp_pattern " ]]' ;;
315+ case $_comp_local_anchoring in
316+ p) _comp_local_predicate =' [[ $_comp_local_value == "$_comp_local_pattern "* ]]' ;;
317+ s) _comp_local_predicate =' [[ $_comp_local_value == *"$_comp_local_pattern " ]]' ;;
318+ m) _comp_local_predicate =' [[ $_comp_local_value == *"$_comp_local_pattern "* ]]' ;;
319+ * ) _comp_local_predicate =' [[ $_comp_local_value == "$_comp_local_pattern " ]]' ;;
320320 esac
321321 ;;
322322 G)
323- case $__comp_anchoring in
324- p) __comp_predicate =' [[ $__comp_value == $__comp_pattern * ]]' ;;
325- s) __comp_predicate =' [[ $__comp_value == *$__comp_pattern ]]' ;;
326- m) __comp_predicate =' [[ $__comp_value == *$__comp_pattern * ]]' ;;
327- * ) __comp_predicate =' [[ $__comp_value == $__comp_pattern ]]' ;;
323+ case $_comp_local_anchoring in
324+ p) _comp_local_predicate =' [[ $_comp_local_value == $_comp_local_pattern * ]]' ;;
325+ s) _comp_local_predicate =' [[ $_comp_local_value == *$_comp_local_pattern ]]' ;;
326+ m) _comp_local_predicate =' [[ $_comp_local_value == *$_comp_local_pattern * ]]' ;;
327+ * ) _comp_local_predicate =' [[ $_comp_local_value == $_comp_local_pattern ]]' ;;
328328 esac
329329 ;;
330330 * )
331331 if declare -F " $2 " & > /dev/null; then
332- _comp_predicate =" $2 \"\$ __comp_value \" "
332+ _comp_local_predicate =" $2 \"\$ _comp_local_value \" "
333333 else
334- _comp_predicate =" local value=\$ __comp_value ; $2 "
334+ _comp_local_predicate =" local value=\$ _comp_local_value ; $2 "
335335 fi
336336 ;;
337337 esac
338338
339- local __comp_unset =' ' __comp_expected_status =0
340- [[ $__comp_flags == * r* ]] && __comp_expected_status =1
339+ local _comp_local_unset =' ' _comp_local_expected_status =0
340+ [[ $_comp_local_flags == * r* ]] && _comp_local_expected_status =1
341341
342- local __comp_indices __comp_index __comp_value
343- eval " __comp_indices =(\"\$ {!$1 [@]}\" )"
344- for __comp_index in " ${__comp_indices [@]} " ; do
345- eval " __comp_value =\$ {$1 [\$ __comp_index ]}; $__comp_predicate "
342+ local _comp_local_indices _comp_local_index _comp_local_value
343+ eval " _comp_local_indices =(\"\$ {!$1 [@]}\" )"
344+ for _comp_local_index in " ${_comp_local_indices [@]} " ; do
345+ eval " _comp_local_value =\$ {$1 [\$ _comp_local_index ]}; $_comp_local_predicate "
346346 case $? in
347- " $__comp_expected_status " ) continue ;;
347+ " $_comp_local_expected_status " ) continue ;;
348348 [01])
349- unset -v " $1 [\$ __comp_index ]"
350- __comp_unset =1
349+ unset -v " $1 [\$ _comp_local_index ]"
350+ _comp_local_unset =1
351351 ;;
352352 * )
353353 printf ' bash_completion: %s: %s\n' " $FUNCNAME " " the filter condition broken." >&2
@@ -357,10 +357,10 @@ _comp_array_filter()
357357 done
358358
359359 # Compaction of the sparse array
360- [[ $__comp_flags == * C* ]] ||
360+ [[ $_comp_local_flags == * C* ]] ||
361361 eval -- " ((\$ {#$1 [@]})) && $1 =(\"\$ {$1 [@]}\" )"
362362
363- [[ ! $__comp_unset ]]
363+ [[ ! $_comp_local_unset ]]
364364}
365365
366366# Reassemble command line words, excluding specified characters from the
0 commit comments