Files
fail/debuggers/openocd/jimtcl/tests/procref.test
Lars Rademacher 83d72a091e debuggers: import openocd-0.7.0
Initial check-in of openocd-0.7.0 as it can be downloaded from
http://sourceforge.net/projects/openocd/files/openocd/0.7.0/

Any modifications will follow.

Change-Id: I6949beaefd589e046395ea0cb80f4e1ab1654d55
2013-12-02 14:53:22 +01:00

57 lines
894 B
Plaintext

# Tests auto-upref with the "&name" syntax
source [file dirname [info script]]/testing.tcl
needs constraint jim
proc a1 {&b c} {
append b b
append c c
}
proc a2 {&b {dummy 3} &c} {
append b b
append c c
}
proc a3 {&b(c)} {
append b(c) b_c
}
# This is treated as a normal var "&b"
proc a4 {{&b x}} {
append &b B
}
set B 1
set C 1
test procref-1.1 {Basic test} {
a1 B $C
set B
} {1b}
test procref-1.2 {Basic test} {
a1 B $C
set B
} {1bb}
test procref-1.3 {Unset var} -body {
a1 unsetB $C
} -returnCodes error -result {can't read "unsetB": no such variable}
test procref-1.4 {Left and right args are refs} {
a2 B C
list $B $C
} {1bbb 1c}
test procref-1.5 {Invalid arg} -body {
a3 B
} -returnCodes error -result {bad variable name "b(c)": upvar won't create a scalar variable that looks like an array element}
test procref-1.6 {Default arg as ref} {
a4
} xB
testreport