From 0e6f661e23d358cca104c24f8438d0ec64df32f1 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Fri, 15 Feb 2008 15:02:15 +0000 Subject: ash: handle "A=1 A=2 B=$A; echo $B". closes bug 947. --- shell/ash_test/ash-vars/var1.right | 6 ++++++ shell/ash_test/ash-vars/var1.tests | 14 ++++++++++++++ shell/ash_test/ash-vars/var2.right | 1 + shell/ash_test/ash-vars/var2.tests | 1 + 4 files changed, 22 insertions(+) create mode 100644 shell/ash_test/ash-vars/var1.right create mode 100755 shell/ash_test/ash-vars/var1.tests create mode 100644 shell/ash_test/ash-vars/var2.right create mode 100755 shell/ash_test/ash-vars/var2.tests (limited to 'shell/ash_test/ash-vars') diff --git a/shell/ash_test/ash-vars/var1.right b/shell/ash_test/ash-vars/var1.right new file mode 100644 index 000000000..2a01291bb --- /dev/null +++ b/shell/ash_test/ash-vars/var1.right @@ -0,0 +1,6 @@ +a=a A=a +a=a A=a +a= A= +a= A= +a=a A=a +a=a A=a diff --git a/shell/ash_test/ash-vars/var1.tests b/shell/ash_test/ash-vars/var1.tests new file mode 100755 index 000000000..802e489bd --- /dev/null +++ b/shell/ash_test/ash-vars/var1.tests @@ -0,0 +1,14 @@ +# check that first assignment has proper effect on second one + +( +a=a A=$a +echo a=$a A=$A +) +(a=a A=$a; echo a=$a A=$A) +(a=a A=$a echo a=$a A=$A) +(a=a A=$a /bin/echo a=$a A=$A) + +f() { echo a=$a A=$A; } + +(a=a A=$a f) +(a=a A=$a; f) diff --git a/shell/ash_test/ash-vars/var2.right b/shell/ash_test/ash-vars/var2.right new file mode 100644 index 000000000..8fed138eb --- /dev/null +++ b/shell/ash_test/ash-vars/var2.right @@ -0,0 +1 @@ +bus/usb/1/2 diff --git a/shell/ash_test/ash-vars/var2.tests b/shell/ash_test/ash-vars/var2.tests new file mode 100755 index 000000000..07feaeb8b --- /dev/null +++ b/shell/ash_test/ash-vars/var2.tests @@ -0,0 +1 @@ +X=usbdev1.2 X=${X#usbdev} B=${X%%.*} D=${X#*.}; echo bus/usb/$B/$D -- cgit v1.2.3