proc incrArray {arrayName value} { upvar $arrayName arr foreach in [array names arr] { set arr($in) [expr {$arr($in) + $value}] } } array set test {a 1 b 2 c 3} puts "AT START" parray test incrArray test 4 puts "AFTER incrArray CALLED to add 4 to each value" parray test