]> git.pld-linux.org Git - projects/rc-scripts.git/commitdiff
test that "local" variables work for sub-functions as well
authorElan Ruusamäe <glen@delfi.ee>
Thu, 8 Oct 2015 14:33:28 +0000 (17:33 +0300)
committerElan Ruusamäe <glen@delfi.ee>
Thu, 8 Oct 2015 14:34:14 +0000 (17:34 +0300)
t/inherit.sh [new file with mode: 0755]

diff --git a/t/inherit.sh b/t/inherit.sh
new file mode 100755 (executable)
index 0000000..a84de96
--- /dev/null
@@ -0,0 +1,31 @@
+#!/bin/sh
+# test that variables local to function are inherited when another function is called out
+#
+# the whole program should output:
+#---
+#sub: var='var'
+#sub: subvar='subvar'
+#main: var='var'
+#main: subvar='subvar'
+#outer: var=''
+#outer: subvar=''
+#---
+
+sub() {
+       subvar=subvar
+       echo "sub: var='$var'"
+       echo "sub: subvar='$subvar'"
+}
+
+main() {
+       local var=var
+       local subvar
+
+       sub
+       echo "main: var='$var'"
+       echo "main: subvar='$subvar'"
+}
+
+main
+echo "outer: var='$var'"
+echo "outer: subvar='$subvar'"
This page took 0.070337 seconds and 4 git commands to generate.