aboutsummaryrefslogtreecommitdiff
path: root/bin/sh/dotcmd/out
diff options
context:
space:
mode:
Diffstat (limited to 'bin/sh/dotcmd/out')
-rw-r--r--bin/sh/dotcmd/out/case_break_case.out8
-rw-r--r--bin/sh/dotcmd/out/case_break_compound.out8
-rw-r--r--bin/sh/dotcmd/out/case_break_file.out6
-rw-r--r--bin/sh/dotcmd/out/case_break_for.out7
-rw-r--r--bin/sh/dotcmd/out/case_break_func.out8
-rw-r--r--bin/sh/dotcmd/out/case_break_subshell.out8
-rw-r--r--bin/sh/dotcmd/out/case_break_until.out7
-rw-r--r--bin/sh/dotcmd/out/case_break_while.out7
-rw-r--r--bin/sh/dotcmd/out/case_continue_case.out8
-rw-r--r--bin/sh/dotcmd/out/case_continue_compound.out8
-rw-r--r--bin/sh/dotcmd/out/case_continue_file.out6
-rw-r--r--bin/sh/dotcmd/out/case_continue_for.out8
-rw-r--r--bin/sh/dotcmd/out/case_continue_func.out8
-rw-r--r--bin/sh/dotcmd/out/case_continue_subshell.out8
-rw-r--r--bin/sh/dotcmd/out/case_continue_until.out8
-rw-r--r--bin/sh/dotcmd/out/case_continue_while.out8
-rw-r--r--bin/sh/dotcmd/out/case_return_case.out6
-rw-r--r--bin/sh/dotcmd/out/case_return_compound.out6
-rw-r--r--bin/sh/dotcmd/out/case_return_file.out5
-rw-r--r--bin/sh/dotcmd/out/case_return_for.out6
-rw-r--r--bin/sh/dotcmd/out/case_return_func.out7
-rw-r--r--bin/sh/dotcmd/out/case_return_subshell.out6
-rw-r--r--bin/sh/dotcmd/out/case_return_until.out6
-rw-r--r--bin/sh/dotcmd/out/case_return_while.out6
-rw-r--r--bin/sh/dotcmd/out/compound_break_case.out8
-rw-r--r--bin/sh/dotcmd/out/compound_break_compound.out8
-rw-r--r--bin/sh/dotcmd/out/compound_break_file.out6
-rw-r--r--bin/sh/dotcmd/out/compound_break_for.out7
-rw-r--r--bin/sh/dotcmd/out/compound_break_func.out8
-rw-r--r--bin/sh/dotcmd/out/compound_break_subshell.out8
-rw-r--r--bin/sh/dotcmd/out/compound_break_until.out7
-rw-r--r--bin/sh/dotcmd/out/compound_break_while.out7
-rw-r--r--bin/sh/dotcmd/out/compound_continue_case.out8
-rw-r--r--bin/sh/dotcmd/out/compound_continue_compound.out8
-rw-r--r--bin/sh/dotcmd/out/compound_continue_file.out6
-rw-r--r--bin/sh/dotcmd/out/compound_continue_for.out8
-rw-r--r--bin/sh/dotcmd/out/compound_continue_func.out8
-rw-r--r--bin/sh/dotcmd/out/compound_continue_subshell.out8
-rw-r--r--bin/sh/dotcmd/out/compound_continue_until.out8
-rw-r--r--bin/sh/dotcmd/out/compound_continue_while.out8
-rw-r--r--bin/sh/dotcmd/out/compound_return_case.out6
-rw-r--r--bin/sh/dotcmd/out/compound_return_compound.out6
-rw-r--r--bin/sh/dotcmd/out/compound_return_file.out5
-rw-r--r--bin/sh/dotcmd/out/compound_return_for.out6
-rw-r--r--bin/sh/dotcmd/out/compound_return_func.out7
-rw-r--r--bin/sh/dotcmd/out/compound_return_subshell.out6
-rw-r--r--bin/sh/dotcmd/out/compound_return_until.out6
-rw-r--r--bin/sh/dotcmd/out/compound_return_while.out6
-rw-r--r--bin/sh/dotcmd/out/file_break_case.out6
-rw-r--r--bin/sh/dotcmd/out/file_break_compound.out6
-rw-r--r--bin/sh/dotcmd/out/file_break_file.out4
-rw-r--r--bin/sh/dotcmd/out/file_break_for.out5
-rw-r--r--bin/sh/dotcmd/out/file_break_func.out6
-rw-r--r--bin/sh/dotcmd/out/file_break_subshell.out6
-rw-r--r--bin/sh/dotcmd/out/file_break_until.out5
-rw-r--r--bin/sh/dotcmd/out/file_break_while.out5
-rw-r--r--bin/sh/dotcmd/out/file_continue_case.out6
-rw-r--r--bin/sh/dotcmd/out/file_continue_compound.out6
-rw-r--r--bin/sh/dotcmd/out/file_continue_file.out4
-rw-r--r--bin/sh/dotcmd/out/file_continue_for.out6
-rw-r--r--bin/sh/dotcmd/out/file_continue_func.out6
-rw-r--r--bin/sh/dotcmd/out/file_continue_subshell.out6
-rw-r--r--bin/sh/dotcmd/out/file_continue_until.out6
-rw-r--r--bin/sh/dotcmd/out/file_continue_while.out6
-rw-r--r--bin/sh/dotcmd/out/file_return_case.out4
-rw-r--r--bin/sh/dotcmd/out/file_return_compound.out4
-rw-r--r--bin/sh/dotcmd/out/file_return_file.out3
-rw-r--r--bin/sh/dotcmd/out/file_return_for.out4
-rw-r--r--bin/sh/dotcmd/out/file_return_func.out5
-rw-r--r--bin/sh/dotcmd/out/file_return_subshell.out4
-rw-r--r--bin/sh/dotcmd/out/file_return_until.out4
-rw-r--r--bin/sh/dotcmd/out/file_return_while.out4
-rw-r--r--bin/sh/dotcmd/out/for_break_case.out5
-rw-r--r--bin/sh/dotcmd/out/for_break_compound.out5
-rw-r--r--bin/sh/dotcmd/out/for_break_file.out4
-rw-r--r--bin/sh/dotcmd/out/for_break_for.out12
-rw-r--r--bin/sh/dotcmd/out/for_break_func.out5
-rw-r--r--bin/sh/dotcmd/out/for_break_subshell.out10
-rw-r--r--bin/sh/dotcmd/out/for_break_until.out12
-rw-r--r--bin/sh/dotcmd/out/for_break_while.out12
-rw-r--r--bin/sh/dotcmd/out/for_continue_case.out8
-rw-r--r--bin/sh/dotcmd/out/for_continue_compound.out8
-rw-r--r--bin/sh/dotcmd/out/for_continue_file.out6
-rw-r--r--bin/sh/dotcmd/out/for_continue_for.out14
-rw-r--r--bin/sh/dotcmd/out/for_continue_func.out8
-rw-r--r--bin/sh/dotcmd/out/for_continue_subshell.out10
-rw-r--r--bin/sh/dotcmd/out/for_continue_until.out14
-rw-r--r--bin/sh/dotcmd/out/for_continue_while.out14
-rw-r--r--bin/sh/dotcmd/out/for_return_case.out10
-rw-r--r--bin/sh/dotcmd/out/for_return_compound.out10
-rw-r--r--bin/sh/dotcmd/out/for_return_file.out8
-rw-r--r--bin/sh/dotcmd/out/for_return_for.out10
-rw-r--r--bin/sh/dotcmd/out/for_return_func.out12
-rw-r--r--bin/sh/dotcmd/out/for_return_subshell.out10
-rw-r--r--bin/sh/dotcmd/out/for_return_until.out10
-rw-r--r--bin/sh/dotcmd/out/for_return_while.out10
-rw-r--r--bin/sh/dotcmd/out/func_break_case.out8
-rw-r--r--bin/sh/dotcmd/out/func_break_compound.out8
-rw-r--r--bin/sh/dotcmd/out/func_break_file.out6
-rw-r--r--bin/sh/dotcmd/out/func_break_for.out7
-rw-r--r--bin/sh/dotcmd/out/func_break_func.out8
-rw-r--r--bin/sh/dotcmd/out/func_break_subshell.out8
-rw-r--r--bin/sh/dotcmd/out/func_break_until.out7
-rw-r--r--bin/sh/dotcmd/out/func_break_while.out7
-rw-r--r--bin/sh/dotcmd/out/func_continue_case.out8
-rw-r--r--bin/sh/dotcmd/out/func_continue_compound.out8
-rw-r--r--bin/sh/dotcmd/out/func_continue_file.out6
-rw-r--r--bin/sh/dotcmd/out/func_continue_for.out8
-rw-r--r--bin/sh/dotcmd/out/func_continue_func.out8
-rw-r--r--bin/sh/dotcmd/out/func_continue_subshell.out8
-rw-r--r--bin/sh/dotcmd/out/func_continue_until.out8
-rw-r--r--bin/sh/dotcmd/out/func_continue_while.out8
-rw-r--r--bin/sh/dotcmd/out/func_return_case.out6
-rw-r--r--bin/sh/dotcmd/out/func_return_compound.out6
-rw-r--r--bin/sh/dotcmd/out/func_return_file.out5
-rw-r--r--bin/sh/dotcmd/out/func_return_for.out6
-rw-r--r--bin/sh/dotcmd/out/func_return_func.out7
-rw-r--r--bin/sh/dotcmd/out/func_return_subshell.out6
-rw-r--r--bin/sh/dotcmd/out/func_return_until.out6
-rw-r--r--bin/sh/dotcmd/out/func_return_while.out6
-rw-r--r--bin/sh/dotcmd/out/subshell_break_case.out8
-rw-r--r--bin/sh/dotcmd/out/subshell_break_compound.out8
-rw-r--r--bin/sh/dotcmd/out/subshell_break_file.out6
-rw-r--r--bin/sh/dotcmd/out/subshell_break_for.out7
-rw-r--r--bin/sh/dotcmd/out/subshell_break_func.out8
-rw-r--r--bin/sh/dotcmd/out/subshell_break_subshell.out8
-rw-r--r--bin/sh/dotcmd/out/subshell_break_until.out7
-rw-r--r--bin/sh/dotcmd/out/subshell_break_while.out7
-rw-r--r--bin/sh/dotcmd/out/subshell_continue_case.out8
-rw-r--r--bin/sh/dotcmd/out/subshell_continue_compound.out8
-rw-r--r--bin/sh/dotcmd/out/subshell_continue_file.out6
-rw-r--r--bin/sh/dotcmd/out/subshell_continue_for.out8
-rw-r--r--bin/sh/dotcmd/out/subshell_continue_func.out8
-rw-r--r--bin/sh/dotcmd/out/subshell_continue_subshell.out8
-rw-r--r--bin/sh/dotcmd/out/subshell_continue_until.out8
-rw-r--r--bin/sh/dotcmd/out/subshell_continue_while.out8
-rw-r--r--bin/sh/dotcmd/out/subshell_return_case.out6
-rw-r--r--bin/sh/dotcmd/out/subshell_return_compound.out6
-rw-r--r--bin/sh/dotcmd/out/subshell_return_file.out5
-rw-r--r--bin/sh/dotcmd/out/subshell_return_for.out6
-rw-r--r--bin/sh/dotcmd/out/subshell_return_func.out7
-rw-r--r--bin/sh/dotcmd/out/subshell_return_subshell.out6
-rw-r--r--bin/sh/dotcmd/out/subshell_return_until.out6
-rw-r--r--bin/sh/dotcmd/out/subshell_return_while.out6
-rw-r--r--bin/sh/dotcmd/out/until_break_case.out5
-rw-r--r--bin/sh/dotcmd/out/until_break_compound.out5
-rw-r--r--bin/sh/dotcmd/out/until_break_file.out4
-rw-r--r--bin/sh/dotcmd/out/until_break_for.out12
-rw-r--r--bin/sh/dotcmd/out/until_break_func.out5
-rw-r--r--bin/sh/dotcmd/out/until_break_subshell.out10
-rw-r--r--bin/sh/dotcmd/out/until_break_until.out12
-rw-r--r--bin/sh/dotcmd/out/until_break_while.out12
-rw-r--r--bin/sh/dotcmd/out/until_continue_case.out8
-rw-r--r--bin/sh/dotcmd/out/until_continue_compound.out8
-rw-r--r--bin/sh/dotcmd/out/until_continue_file.out6
-rw-r--r--bin/sh/dotcmd/out/until_continue_for.out14
-rw-r--r--bin/sh/dotcmd/out/until_continue_func.out8
-rw-r--r--bin/sh/dotcmd/out/until_continue_subshell.out10
-rw-r--r--bin/sh/dotcmd/out/until_continue_until.out14
-rw-r--r--bin/sh/dotcmd/out/until_continue_while.out14
-rw-r--r--bin/sh/dotcmd/out/until_return_case.out10
-rw-r--r--bin/sh/dotcmd/out/until_return_compound.out10
-rw-r--r--bin/sh/dotcmd/out/until_return_file.out8
-rw-r--r--bin/sh/dotcmd/out/until_return_for.out10
-rw-r--r--bin/sh/dotcmd/out/until_return_func.out12
-rw-r--r--bin/sh/dotcmd/out/until_return_subshell.out10
-rw-r--r--bin/sh/dotcmd/out/until_return_until.out10
-rw-r--r--bin/sh/dotcmd/out/until_return_while.out10
-rw-r--r--bin/sh/dotcmd/out/while_break_case.out5
-rw-r--r--bin/sh/dotcmd/out/while_break_compound.out5
-rw-r--r--bin/sh/dotcmd/out/while_break_file.out4
-rw-r--r--bin/sh/dotcmd/out/while_break_for.out12
-rw-r--r--bin/sh/dotcmd/out/while_break_func.out5
-rw-r--r--bin/sh/dotcmd/out/while_break_subshell.out10
-rw-r--r--bin/sh/dotcmd/out/while_break_until.out12
-rw-r--r--bin/sh/dotcmd/out/while_break_while.out12
-rw-r--r--bin/sh/dotcmd/out/while_continue_case.out8
-rw-r--r--bin/sh/dotcmd/out/while_continue_compound.out8
-rw-r--r--bin/sh/dotcmd/out/while_continue_file.out6
-rw-r--r--bin/sh/dotcmd/out/while_continue_for.out14
-rw-r--r--bin/sh/dotcmd/out/while_continue_func.out8
-rw-r--r--bin/sh/dotcmd/out/while_continue_subshell.out10
-rw-r--r--bin/sh/dotcmd/out/while_continue_until.out14
-rw-r--r--bin/sh/dotcmd/out/while_continue_while.out14
-rw-r--r--bin/sh/dotcmd/out/while_return_case.out10
-rw-r--r--bin/sh/dotcmd/out/while_return_compound.out10
-rw-r--r--bin/sh/dotcmd/out/while_return_file.out8
-rw-r--r--bin/sh/dotcmd/out/while_return_for.out10
-rw-r--r--bin/sh/dotcmd/out/while_return_func.out12
-rw-r--r--bin/sh/dotcmd/out/while_return_subshell.out10
-rw-r--r--bin/sh/dotcmd/out/while_return_until.out10
-rw-r--r--bin/sh/dotcmd/out/while_return_while.out10
192 files changed, 1478 insertions, 0 deletions
diff --git a/bin/sh/dotcmd/out/case_break_case.out b/bin/sh/dotcmd/out/case_break_case.out
new file mode 100644
index 000000000000..4c4205563e80
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_break_case.out
@@ -0,0 +1,8 @@
+before case
+before dotcmd
+before case
+before break
+after break, return value: 0
+after case
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_break_compound.out b/bin/sh/dotcmd/out/case_break_compound.out
new file mode 100644
index 000000000000..01113ca97a69
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_break_compound.out
@@ -0,0 +1,8 @@
+before case
+before dotcmd
+compound start
+before break
+after break, return value: 0
+compound end
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_break_file.out b/bin/sh/dotcmd/out/case_break_file.out
new file mode 100644
index 000000000000..52640203d8da
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_break_file.out
@@ -0,0 +1,6 @@
+before case
+before dotcmd
+before break
+after break, return value: 0
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_break_for.out b/bin/sh/dotcmd/out/case_break_for.out
new file mode 100644
index 000000000000..e116ee2b6a66
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_break_for.out
@@ -0,0 +1,7 @@
+before case
+before dotcmd
+before for
+before break
+after for
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_break_func.out b/bin/sh/dotcmd/out/case_break_func.out
new file mode 100644
index 000000000000..906a804d2185
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_break_func.out
@@ -0,0 +1,8 @@
+before case
+before dotcmd
+before function
+before break
+after break
+after function
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_break_subshell.out b/bin/sh/dotcmd/out/case_break_subshell.out
new file mode 100644
index 000000000000..073caff318ba
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_break_subshell.out
@@ -0,0 +1,8 @@
+before case
+before dotcmd
+subshell start
+before break
+after break, return value: 0
+subshell end
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_break_until.out b/bin/sh/dotcmd/out/case_break_until.out
new file mode 100644
index 000000000000..f47bd43cccba
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_break_until.out
@@ -0,0 +1,7 @@
+before case
+before dotcmd
+before until
+before break
+after until
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_break_while.out b/bin/sh/dotcmd/out/case_break_while.out
new file mode 100644
index 000000000000..e9a73f8112b1
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_break_while.out
@@ -0,0 +1,7 @@
+before case
+before dotcmd
+before while
+before break
+after while
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_continue_case.out b/bin/sh/dotcmd/out/case_continue_case.out
new file mode 100644
index 000000000000..7919427ae304
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_continue_case.out
@@ -0,0 +1,8 @@
+before case
+before dotcmd
+before case
+before continue
+after continue, return value: 0
+after case
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_continue_compound.out b/bin/sh/dotcmd/out/case_continue_compound.out
new file mode 100644
index 000000000000..9195e0889eb9
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_continue_compound.out
@@ -0,0 +1,8 @@
+before case
+before dotcmd
+compound start
+before continue
+after continue, return value: 0
+compound end
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_continue_file.out b/bin/sh/dotcmd/out/case_continue_file.out
new file mode 100644
index 000000000000..100a5906f0a4
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_continue_file.out
@@ -0,0 +1,6 @@
+before case
+before dotcmd
+before continue
+after continue, return value: 0
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_continue_for.out b/bin/sh/dotcmd/out/case_continue_for.out
new file mode 100644
index 000000000000..9a078d0abc1e
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_continue_for.out
@@ -0,0 +1,8 @@
+before case
+before dotcmd
+before for
+before continue
+before continue
+after for
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_continue_func.out b/bin/sh/dotcmd/out/case_continue_func.out
new file mode 100644
index 000000000000..6282c89d7437
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_continue_func.out
@@ -0,0 +1,8 @@
+before case
+before dotcmd
+before function
+before continue
+after continue
+after function
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_continue_subshell.out b/bin/sh/dotcmd/out/case_continue_subshell.out
new file mode 100644
index 000000000000..b066ab64b7d7
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_continue_subshell.out
@@ -0,0 +1,8 @@
+before case
+before dotcmd
+subshell start
+before continue
+after continue, return value: 0
+subshell end
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_continue_until.out b/bin/sh/dotcmd/out/case_continue_until.out
new file mode 100644
index 000000000000..afc85b6561a1
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_continue_until.out
@@ -0,0 +1,8 @@
+before case
+before dotcmd
+before until
+before continue
+before continue
+after until
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_continue_while.out b/bin/sh/dotcmd/out/case_continue_while.out
new file mode 100644
index 000000000000..cb4137d23391
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_continue_while.out
@@ -0,0 +1,8 @@
+before case
+before dotcmd
+before while
+before continue
+before continue
+after while
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_return_case.out b/bin/sh/dotcmd/out/case_return_case.out
new file mode 100644
index 000000000000..734369d564e3
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_return_case.out
@@ -0,0 +1,6 @@
+before case
+before dotcmd
+before case
+before return
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_return_compound.out b/bin/sh/dotcmd/out/case_return_compound.out
new file mode 100644
index 000000000000..2fae84e35df0
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_return_compound.out
@@ -0,0 +1,6 @@
+before case
+before dotcmd
+compound start
+before return
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_return_file.out b/bin/sh/dotcmd/out/case_return_file.out
new file mode 100644
index 000000000000..f97ecc6dab50
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_return_file.out
@@ -0,0 +1,5 @@
+before case
+before dotcmd
+before return
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_return_for.out b/bin/sh/dotcmd/out/case_return_for.out
new file mode 100644
index 000000000000..d863537007be
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_return_for.out
@@ -0,0 +1,6 @@
+before case
+before dotcmd
+before for
+before return
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_return_func.out b/bin/sh/dotcmd/out/case_return_func.out
new file mode 100644
index 000000000000..aed8fa4db71a
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_return_func.out
@@ -0,0 +1,7 @@
+before case
+before dotcmd
+before function
+before return
+after function
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_return_subshell.out b/bin/sh/dotcmd/out/case_return_subshell.out
new file mode 100644
index 000000000000..364d2458e604
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_return_subshell.out
@@ -0,0 +1,6 @@
+before case
+before dotcmd
+subshell start
+before return
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_return_until.out b/bin/sh/dotcmd/out/case_return_until.out
new file mode 100644
index 000000000000..daf3811e2e9a
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_return_until.out
@@ -0,0 +1,6 @@
+before case
+before dotcmd
+before until
+before return
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/case_return_while.out b/bin/sh/dotcmd/out/case_return_while.out
new file mode 100644
index 000000000000..ef6a6764d515
--- /dev/null
+++ b/bin/sh/dotcmd/out/case_return_while.out
@@ -0,0 +1,6 @@
+before case
+before dotcmd
+before while
+before return
+after dotcmd, return value: 0
+after case
diff --git a/bin/sh/dotcmd/out/compound_break_case.out b/bin/sh/dotcmd/out/compound_break_case.out
new file mode 100644
index 000000000000..144bcd6d00f4
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_break_case.out
@@ -0,0 +1,8 @@
+compound start
+before dotcmd
+before case
+before break
+after break, return value: 0
+after case
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_break_compound.out b/bin/sh/dotcmd/out/compound_break_compound.out
new file mode 100644
index 000000000000..3fd7b2f92e2a
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_break_compound.out
@@ -0,0 +1,8 @@
+compound start
+before dotcmd
+compound start
+before break
+after break, return value: 0
+compound end
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_break_file.out b/bin/sh/dotcmd/out/compound_break_file.out
new file mode 100644
index 000000000000..5ad5ed396a74
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_break_file.out
@@ -0,0 +1,6 @@
+compound start
+before dotcmd
+before break
+after break, return value: 0
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_break_for.out b/bin/sh/dotcmd/out/compound_break_for.out
new file mode 100644
index 000000000000..7f03e495bcde
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_break_for.out
@@ -0,0 +1,7 @@
+compound start
+before dotcmd
+before for
+before break
+after for
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_break_func.out b/bin/sh/dotcmd/out/compound_break_func.out
new file mode 100644
index 000000000000..82e86b3c778e
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_break_func.out
@@ -0,0 +1,8 @@
+compound start
+before dotcmd
+before function
+before break
+after break
+after function
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_break_subshell.out b/bin/sh/dotcmd/out/compound_break_subshell.out
new file mode 100644
index 000000000000..e26e980f7ebf
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_break_subshell.out
@@ -0,0 +1,8 @@
+compound start
+before dotcmd
+subshell start
+before break
+after break, return value: 0
+subshell end
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_break_until.out b/bin/sh/dotcmd/out/compound_break_until.out
new file mode 100644
index 000000000000..34dd25adeaa0
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_break_until.out
@@ -0,0 +1,7 @@
+compound start
+before dotcmd
+before until
+before break
+after until
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_break_while.out b/bin/sh/dotcmd/out/compound_break_while.out
new file mode 100644
index 000000000000..7019045bc39f
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_break_while.out
@@ -0,0 +1,7 @@
+compound start
+before dotcmd
+before while
+before break
+after while
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_continue_case.out b/bin/sh/dotcmd/out/compound_continue_case.out
new file mode 100644
index 000000000000..206548ccff38
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_continue_case.out
@@ -0,0 +1,8 @@
+compound start
+before dotcmd
+before case
+before continue
+after continue, return value: 0
+after case
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_continue_compound.out b/bin/sh/dotcmd/out/compound_continue_compound.out
new file mode 100644
index 000000000000..a8c7efc159ec
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_continue_compound.out
@@ -0,0 +1,8 @@
+compound start
+before dotcmd
+compound start
+before continue
+after continue, return value: 0
+compound end
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_continue_file.out b/bin/sh/dotcmd/out/compound_continue_file.out
new file mode 100644
index 000000000000..c619ad560f9d
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_continue_file.out
@@ -0,0 +1,6 @@
+compound start
+before dotcmd
+before continue
+after continue, return value: 0
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_continue_for.out b/bin/sh/dotcmd/out/compound_continue_for.out
new file mode 100644
index 000000000000..35b092a42fb3
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_continue_for.out
@@ -0,0 +1,8 @@
+compound start
+before dotcmd
+before for
+before continue
+before continue
+after for
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_continue_func.out b/bin/sh/dotcmd/out/compound_continue_func.out
new file mode 100644
index 000000000000..198dbd6af513
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_continue_func.out
@@ -0,0 +1,8 @@
+compound start
+before dotcmd
+before function
+before continue
+after continue
+after function
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_continue_subshell.out b/bin/sh/dotcmd/out/compound_continue_subshell.out
new file mode 100644
index 000000000000..1ecaa96e422f
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_continue_subshell.out
@@ -0,0 +1,8 @@
+compound start
+before dotcmd
+subshell start
+before continue
+after continue, return value: 0
+subshell end
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_continue_until.out b/bin/sh/dotcmd/out/compound_continue_until.out
new file mode 100644
index 000000000000..4a74a8e8e431
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_continue_until.out
@@ -0,0 +1,8 @@
+compound start
+before dotcmd
+before until
+before continue
+before continue
+after until
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_continue_while.out b/bin/sh/dotcmd/out/compound_continue_while.out
new file mode 100644
index 000000000000..b2d939ed538c
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_continue_while.out
@@ -0,0 +1,8 @@
+compound start
+before dotcmd
+before while
+before continue
+before continue
+after while
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_return_case.out b/bin/sh/dotcmd/out/compound_return_case.out
new file mode 100644
index 000000000000..995d5b556f42
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_return_case.out
@@ -0,0 +1,6 @@
+compound start
+before dotcmd
+before case
+before return
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_return_compound.out b/bin/sh/dotcmd/out/compound_return_compound.out
new file mode 100644
index 000000000000..f6e4858e6f5d
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_return_compound.out
@@ -0,0 +1,6 @@
+compound start
+before dotcmd
+compound start
+before return
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_return_file.out b/bin/sh/dotcmd/out/compound_return_file.out
new file mode 100644
index 000000000000..84347b28f74d
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_return_file.out
@@ -0,0 +1,5 @@
+compound start
+before dotcmd
+before return
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_return_for.out b/bin/sh/dotcmd/out/compound_return_for.out
new file mode 100644
index 000000000000..ec234472aa6d
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_return_for.out
@@ -0,0 +1,6 @@
+compound start
+before dotcmd
+before for
+before return
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_return_func.out b/bin/sh/dotcmd/out/compound_return_func.out
new file mode 100644
index 000000000000..12798d0e0322
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_return_func.out
@@ -0,0 +1,7 @@
+compound start
+before dotcmd
+before function
+before return
+after function
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_return_subshell.out b/bin/sh/dotcmd/out/compound_return_subshell.out
new file mode 100644
index 000000000000..af0ab785fbb4
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_return_subshell.out
@@ -0,0 +1,6 @@
+compound start
+before dotcmd
+subshell start
+before return
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_return_until.out b/bin/sh/dotcmd/out/compound_return_until.out
new file mode 100644
index 000000000000..a108f502d2c6
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_return_until.out
@@ -0,0 +1,6 @@
+compound start
+before dotcmd
+before until
+before return
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/compound_return_while.out b/bin/sh/dotcmd/out/compound_return_while.out
new file mode 100644
index 000000000000..ef34c037a9f8
--- /dev/null
+++ b/bin/sh/dotcmd/out/compound_return_while.out
@@ -0,0 +1,6 @@
+compound start
+before dotcmd
+before while
+before return
+after dotcmd, return value: 0
+compound end
diff --git a/bin/sh/dotcmd/out/file_break_case.out b/bin/sh/dotcmd/out/file_break_case.out
new file mode 100644
index 000000000000..2f34f10c726b
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_break_case.out
@@ -0,0 +1,6 @@
+before dotcmd
+before case
+before break
+after break, return value: 0
+after case
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_break_compound.out b/bin/sh/dotcmd/out/file_break_compound.out
new file mode 100644
index 000000000000..0c7300d6a3ee
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_break_compound.out
@@ -0,0 +1,6 @@
+before dotcmd
+compound start
+before break
+after break, return value: 0
+compound end
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_break_file.out b/bin/sh/dotcmd/out/file_break_file.out
new file mode 100644
index 000000000000..fb4db197ddac
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_break_file.out
@@ -0,0 +1,4 @@
+before dotcmd
+before break
+after break, return value: 0
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_break_for.out b/bin/sh/dotcmd/out/file_break_for.out
new file mode 100644
index 000000000000..66f445287d5b
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_break_for.out
@@ -0,0 +1,5 @@
+before dotcmd
+before for
+before break
+after for
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_break_func.out b/bin/sh/dotcmd/out/file_break_func.out
new file mode 100644
index 000000000000..c5488abadbc5
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_break_func.out
@@ -0,0 +1,6 @@
+before dotcmd
+before function
+before break
+after break
+after function
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_break_subshell.out b/bin/sh/dotcmd/out/file_break_subshell.out
new file mode 100644
index 000000000000..47e2394084af
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_break_subshell.out
@@ -0,0 +1,6 @@
+before dotcmd
+subshell start
+before break
+after break, return value: 0
+subshell end
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_break_until.out b/bin/sh/dotcmd/out/file_break_until.out
new file mode 100644
index 000000000000..b51ff195bd84
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_break_until.out
@@ -0,0 +1,5 @@
+before dotcmd
+before until
+before break
+after until
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_break_while.out b/bin/sh/dotcmd/out/file_break_while.out
new file mode 100644
index 000000000000..0fd3a83ce03d
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_break_while.out
@@ -0,0 +1,5 @@
+before dotcmd
+before while
+before break
+after while
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_continue_case.out b/bin/sh/dotcmd/out/file_continue_case.out
new file mode 100644
index 000000000000..2cf3be6d3b4e
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_continue_case.out
@@ -0,0 +1,6 @@
+before dotcmd
+before case
+before continue
+after continue, return value: 0
+after case
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_continue_compound.out b/bin/sh/dotcmd/out/file_continue_compound.out
new file mode 100644
index 000000000000..7bec42019aee
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_continue_compound.out
@@ -0,0 +1,6 @@
+before dotcmd
+compound start
+before continue
+after continue, return value: 0
+compound end
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_continue_file.out b/bin/sh/dotcmd/out/file_continue_file.out
new file mode 100644
index 000000000000..2f8806c60b6d
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_continue_file.out
@@ -0,0 +1,4 @@
+before dotcmd
+before continue
+after continue, return value: 0
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_continue_for.out b/bin/sh/dotcmd/out/file_continue_for.out
new file mode 100644
index 000000000000..e8da2390bbbf
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_continue_for.out
@@ -0,0 +1,6 @@
+before dotcmd
+before for
+before continue
+before continue
+after for
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_continue_func.out b/bin/sh/dotcmd/out/file_continue_func.out
new file mode 100644
index 000000000000..da683c02a158
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_continue_func.out
@@ -0,0 +1,6 @@
+before dotcmd
+before function
+before continue
+after continue
+after function
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_continue_subshell.out b/bin/sh/dotcmd/out/file_continue_subshell.out
new file mode 100644
index 000000000000..388558b060e6
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_continue_subshell.out
@@ -0,0 +1,6 @@
+before dotcmd
+subshell start
+before continue
+after continue, return value: 0
+subshell end
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_continue_until.out b/bin/sh/dotcmd/out/file_continue_until.out
new file mode 100644
index 000000000000..bb0f28134eee
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_continue_until.out
@@ -0,0 +1,6 @@
+before dotcmd
+before until
+before continue
+before continue
+after until
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_continue_while.out b/bin/sh/dotcmd/out/file_continue_while.out
new file mode 100644
index 000000000000..63338234aa4c
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_continue_while.out
@@ -0,0 +1,6 @@
+before dotcmd
+before while
+before continue
+before continue
+after while
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_return_case.out b/bin/sh/dotcmd/out/file_return_case.out
new file mode 100644
index 000000000000..486685242bda
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_return_case.out
@@ -0,0 +1,4 @@
+before dotcmd
+before case
+before return
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_return_compound.out b/bin/sh/dotcmd/out/file_return_compound.out
new file mode 100644
index 000000000000..6b831451d867
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_return_compound.out
@@ -0,0 +1,4 @@
+before dotcmd
+compound start
+before return
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_return_file.out b/bin/sh/dotcmd/out/file_return_file.out
new file mode 100644
index 000000000000..2d6742310a0f
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_return_file.out
@@ -0,0 +1,3 @@
+before dotcmd
+before return
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_return_for.out b/bin/sh/dotcmd/out/file_return_for.out
new file mode 100644
index 000000000000..83f8e002950f
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_return_for.out
@@ -0,0 +1,4 @@
+before dotcmd
+before for
+before return
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_return_func.out b/bin/sh/dotcmd/out/file_return_func.out
new file mode 100644
index 000000000000..a0db2c99cfa8
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_return_func.out
@@ -0,0 +1,5 @@
+before dotcmd
+before function
+before return
+after function
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_return_subshell.out b/bin/sh/dotcmd/out/file_return_subshell.out
new file mode 100644
index 000000000000..83cd0e4ed0b0
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_return_subshell.out
@@ -0,0 +1,4 @@
+before dotcmd
+subshell start
+before return
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_return_until.out b/bin/sh/dotcmd/out/file_return_until.out
new file mode 100644
index 000000000000..fdf2449045a1
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_return_until.out
@@ -0,0 +1,4 @@
+before dotcmd
+before until
+before return
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/file_return_while.out b/bin/sh/dotcmd/out/file_return_while.out
new file mode 100644
index 000000000000..a733aa38912b
--- /dev/null
+++ b/bin/sh/dotcmd/out/file_return_while.out
@@ -0,0 +1,4 @@
+before dotcmd
+before while
+before return
+after dotcmd, return value: 0
diff --git a/bin/sh/dotcmd/out/for_break_case.out b/bin/sh/dotcmd/out/for_break_case.out
new file mode 100644
index 000000000000..262db24358d4
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_break_case.out
@@ -0,0 +1,5 @@
+before for
+before dotcmd
+before case
+before break
+after for
diff --git a/bin/sh/dotcmd/out/for_break_compound.out b/bin/sh/dotcmd/out/for_break_compound.out
new file mode 100644
index 000000000000..418a4de73c0c
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_break_compound.out
@@ -0,0 +1,5 @@
+before for
+before dotcmd
+compound start
+before break
+after for
diff --git a/bin/sh/dotcmd/out/for_break_file.out b/bin/sh/dotcmd/out/for_break_file.out
new file mode 100644
index 000000000000..752c95c9815c
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_break_file.out
@@ -0,0 +1,4 @@
+before for
+before dotcmd
+before break
+after for
diff --git a/bin/sh/dotcmd/out/for_break_for.out b/bin/sh/dotcmd/out/for_break_for.out
new file mode 100644
index 000000000000..20af6224fc55
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_break_for.out
@@ -0,0 +1,12 @@
+before for
+before dotcmd
+before for
+before break
+after for
+after dotcmd, return value: 0
+before dotcmd
+before for
+before break
+after for
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_break_func.out b/bin/sh/dotcmd/out/for_break_func.out
new file mode 100644
index 000000000000..fe0cab4fa49b
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_break_func.out
@@ -0,0 +1,5 @@
+before for
+before dotcmd
+before function
+before break
+after for
diff --git a/bin/sh/dotcmd/out/for_break_subshell.out b/bin/sh/dotcmd/out/for_break_subshell.out
new file mode 100644
index 000000000000..985aab6270c4
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_break_subshell.out
@@ -0,0 +1,10 @@
+before for
+before dotcmd
+subshell start
+before break
+after dotcmd, return value: 0
+before dotcmd
+subshell start
+before break
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_break_until.out b/bin/sh/dotcmd/out/for_break_until.out
new file mode 100644
index 000000000000..b47c90198f18
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_break_until.out
@@ -0,0 +1,12 @@
+before for
+before dotcmd
+before until
+before break
+after until
+after dotcmd, return value: 0
+before dotcmd
+before until
+before break
+after until
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_break_while.out b/bin/sh/dotcmd/out/for_break_while.out
new file mode 100644
index 000000000000..deb4cebaece8
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_break_while.out
@@ -0,0 +1,12 @@
+before for
+before dotcmd
+before while
+before break
+after while
+after dotcmd, return value: 0
+before dotcmd
+before while
+before break
+after while
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_continue_case.out b/bin/sh/dotcmd/out/for_continue_case.out
new file mode 100644
index 000000000000..e989063290ea
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_continue_case.out
@@ -0,0 +1,8 @@
+before for
+before dotcmd
+before case
+before continue
+before dotcmd
+before case
+before continue
+after for
diff --git a/bin/sh/dotcmd/out/for_continue_compound.out b/bin/sh/dotcmd/out/for_continue_compound.out
new file mode 100644
index 000000000000..0fd23b628719
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_continue_compound.out
@@ -0,0 +1,8 @@
+before for
+before dotcmd
+compound start
+before continue
+before dotcmd
+compound start
+before continue
+after for
diff --git a/bin/sh/dotcmd/out/for_continue_file.out b/bin/sh/dotcmd/out/for_continue_file.out
new file mode 100644
index 000000000000..286bb88c1ea1
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_continue_file.out
@@ -0,0 +1,6 @@
+before for
+before dotcmd
+before continue
+before dotcmd
+before continue
+after for
diff --git a/bin/sh/dotcmd/out/for_continue_for.out b/bin/sh/dotcmd/out/for_continue_for.out
new file mode 100644
index 000000000000..044d5a35c55e
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_continue_for.out
@@ -0,0 +1,14 @@
+before for
+before dotcmd
+before for
+before continue
+before continue
+after for
+after dotcmd, return value: 0
+before dotcmd
+before for
+before continue
+before continue
+after for
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_continue_func.out b/bin/sh/dotcmd/out/for_continue_func.out
new file mode 100644
index 000000000000..a0cc6cc18fd8
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_continue_func.out
@@ -0,0 +1,8 @@
+before for
+before dotcmd
+before function
+before continue
+before dotcmd
+before function
+before continue
+after for
diff --git a/bin/sh/dotcmd/out/for_continue_subshell.out b/bin/sh/dotcmd/out/for_continue_subshell.out
new file mode 100644
index 000000000000..f1ae7aab16d0
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_continue_subshell.out
@@ -0,0 +1,10 @@
+before for
+before dotcmd
+subshell start
+before continue
+after dotcmd, return value: 0
+before dotcmd
+subshell start
+before continue
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_continue_until.out b/bin/sh/dotcmd/out/for_continue_until.out
new file mode 100644
index 000000000000..b1c4147a9730
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_continue_until.out
@@ -0,0 +1,14 @@
+before for
+before dotcmd
+before until
+before continue
+before continue
+after until
+after dotcmd, return value: 0
+before dotcmd
+before until
+before continue
+before continue
+after until
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_continue_while.out b/bin/sh/dotcmd/out/for_continue_while.out
new file mode 100644
index 000000000000..f8e5c5d11830
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_continue_while.out
@@ -0,0 +1,14 @@
+before for
+before dotcmd
+before while
+before continue
+before continue
+after while
+after dotcmd, return value: 0
+before dotcmd
+before while
+before continue
+before continue
+after while
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_return_case.out b/bin/sh/dotcmd/out/for_return_case.out
new file mode 100644
index 000000000000..24b7145a05c4
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_return_case.out
@@ -0,0 +1,10 @@
+before for
+before dotcmd
+before case
+before return
+after dotcmd, return value: 0
+before dotcmd
+before case
+before return
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_return_compound.out b/bin/sh/dotcmd/out/for_return_compound.out
new file mode 100644
index 000000000000..30b4dac3988e
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_return_compound.out
@@ -0,0 +1,10 @@
+before for
+before dotcmd
+compound start
+before return
+after dotcmd, return value: 0
+before dotcmd
+compound start
+before return
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_return_file.out b/bin/sh/dotcmd/out/for_return_file.out
new file mode 100644
index 000000000000..88555621c77f
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_return_file.out
@@ -0,0 +1,8 @@
+before for
+before dotcmd
+before return
+after dotcmd, return value: 0
+before dotcmd
+before return
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_return_for.out b/bin/sh/dotcmd/out/for_return_for.out
new file mode 100644
index 000000000000..52a72a9fb0c8
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_return_for.out
@@ -0,0 +1,10 @@
+before for
+before dotcmd
+before for
+before return
+after dotcmd, return value: 0
+before dotcmd
+before for
+before return
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_return_func.out b/bin/sh/dotcmd/out/for_return_func.out
new file mode 100644
index 000000000000..4f0fee21740b
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_return_func.out
@@ -0,0 +1,12 @@
+before for
+before dotcmd
+before function
+before return
+after function
+after dotcmd, return value: 0
+before dotcmd
+before function
+before return
+after function
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_return_subshell.out b/bin/sh/dotcmd/out/for_return_subshell.out
new file mode 100644
index 000000000000..4b8f36c1a331
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_return_subshell.out
@@ -0,0 +1,10 @@
+before for
+before dotcmd
+subshell start
+before return
+after dotcmd, return value: 0
+before dotcmd
+subshell start
+before return
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_return_until.out b/bin/sh/dotcmd/out/for_return_until.out
new file mode 100644
index 000000000000..3eaf9df84b8b
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_return_until.out
@@ -0,0 +1,10 @@
+before for
+before dotcmd
+before until
+before return
+after dotcmd, return value: 0
+before dotcmd
+before until
+before return
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/for_return_while.out b/bin/sh/dotcmd/out/for_return_while.out
new file mode 100644
index 000000000000..8cbad954cdad
--- /dev/null
+++ b/bin/sh/dotcmd/out/for_return_while.out
@@ -0,0 +1,10 @@
+before for
+before dotcmd
+before while
+before return
+after dotcmd, return value: 0
+before dotcmd
+before while
+before return
+after dotcmd, return value: 0
+after for
diff --git a/bin/sh/dotcmd/out/func_break_case.out b/bin/sh/dotcmd/out/func_break_case.out
new file mode 100644
index 000000000000..7373371e511b
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_break_case.out
@@ -0,0 +1,8 @@
+before function
+before dotcmd
+before case
+before break
+after break, return value: 0
+after case
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_break_compound.out b/bin/sh/dotcmd/out/func_break_compound.out
new file mode 100644
index 000000000000..e87b4a2e8e14
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_break_compound.out
@@ -0,0 +1,8 @@
+before function
+before dotcmd
+compound start
+before break
+after break, return value: 0
+compound end
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_break_file.out b/bin/sh/dotcmd/out/func_break_file.out
new file mode 100644
index 000000000000..cf144227aefe
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_break_file.out
@@ -0,0 +1,6 @@
+before function
+before dotcmd
+before break
+after break, return value: 0
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_break_for.out b/bin/sh/dotcmd/out/func_break_for.out
new file mode 100644
index 000000000000..c3853488a517
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_break_for.out
@@ -0,0 +1,7 @@
+before function
+before dotcmd
+before for
+before break
+after for
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_break_func.out b/bin/sh/dotcmd/out/func_break_func.out
new file mode 100644
index 000000000000..5c1c4c830164
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_break_func.out
@@ -0,0 +1,8 @@
+before function
+before dotcmd
+before function
+before break
+after break
+after function
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_break_subshell.out b/bin/sh/dotcmd/out/func_break_subshell.out
new file mode 100644
index 000000000000..affe3e4bdefb
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_break_subshell.out
@@ -0,0 +1,8 @@
+before function
+before dotcmd
+subshell start
+before break
+after break, return value: 0
+subshell end
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_break_until.out b/bin/sh/dotcmd/out/func_break_until.out
new file mode 100644
index 000000000000..b0f942a04fbf
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_break_until.out
@@ -0,0 +1,7 @@
+before function
+before dotcmd
+before until
+before break
+after until
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_break_while.out b/bin/sh/dotcmd/out/func_break_while.out
new file mode 100644
index 000000000000..d687aa766498
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_break_while.out
@@ -0,0 +1,7 @@
+before function
+before dotcmd
+before while
+before break
+after while
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_continue_case.out b/bin/sh/dotcmd/out/func_continue_case.out
new file mode 100644
index 000000000000..b1ad4be38bfd
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_continue_case.out
@@ -0,0 +1,8 @@
+before function
+before dotcmd
+before case
+before continue
+after continue, return value: 0
+after case
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_continue_compound.out b/bin/sh/dotcmd/out/func_continue_compound.out
new file mode 100644
index 000000000000..d6a5edd9940f
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_continue_compound.out
@@ -0,0 +1,8 @@
+before function
+before dotcmd
+compound start
+before continue
+after continue, return value: 0
+compound end
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_continue_file.out b/bin/sh/dotcmd/out/func_continue_file.out
new file mode 100644
index 000000000000..f300d6afee79
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_continue_file.out
@@ -0,0 +1,6 @@
+before function
+before dotcmd
+before continue
+after continue, return value: 0
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_continue_for.out b/bin/sh/dotcmd/out/func_continue_for.out
new file mode 100644
index 000000000000..d46095d58d36
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_continue_for.out
@@ -0,0 +1,8 @@
+before function
+before dotcmd
+before for
+before continue
+before continue
+after for
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_continue_func.out b/bin/sh/dotcmd/out/func_continue_func.out
new file mode 100644
index 000000000000..3ff73a2bdaa9
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_continue_func.out
@@ -0,0 +1,8 @@
+before function
+before dotcmd
+before function
+before continue
+after continue
+after function
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_continue_subshell.out b/bin/sh/dotcmd/out/func_continue_subshell.out
new file mode 100644
index 000000000000..fd295aad8542
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_continue_subshell.out
@@ -0,0 +1,8 @@
+before function
+before dotcmd
+subshell start
+before continue
+after continue, return value: 0
+subshell end
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_continue_until.out b/bin/sh/dotcmd/out/func_continue_until.out
new file mode 100644
index 000000000000..7a6508328e00
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_continue_until.out
@@ -0,0 +1,8 @@
+before function
+before dotcmd
+before until
+before continue
+before continue
+after until
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_continue_while.out b/bin/sh/dotcmd/out/func_continue_while.out
new file mode 100644
index 000000000000..6ecbe8261164
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_continue_while.out
@@ -0,0 +1,8 @@
+before function
+before dotcmd
+before while
+before continue
+before continue
+after while
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_return_case.out b/bin/sh/dotcmd/out/func_return_case.out
new file mode 100644
index 000000000000..8f0c0948357a
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_return_case.out
@@ -0,0 +1,6 @@
+before function
+before dotcmd
+before case
+before return
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_return_compound.out b/bin/sh/dotcmd/out/func_return_compound.out
new file mode 100644
index 000000000000..e3d86704f79d
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_return_compound.out
@@ -0,0 +1,6 @@
+before function
+before dotcmd
+compound start
+before return
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_return_file.out b/bin/sh/dotcmd/out/func_return_file.out
new file mode 100644
index 000000000000..95e341525799
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_return_file.out
@@ -0,0 +1,5 @@
+before function
+before dotcmd
+before return
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_return_for.out b/bin/sh/dotcmd/out/func_return_for.out
new file mode 100644
index 000000000000..511cc39ca34f
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_return_for.out
@@ -0,0 +1,6 @@
+before function
+before dotcmd
+before for
+before return
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_return_func.out b/bin/sh/dotcmd/out/func_return_func.out
new file mode 100644
index 000000000000..a87d3a780043
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_return_func.out
@@ -0,0 +1,7 @@
+before function
+before dotcmd
+before function
+before return
+after function
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_return_subshell.out b/bin/sh/dotcmd/out/func_return_subshell.out
new file mode 100644
index 000000000000..fdb37b20979e
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_return_subshell.out
@@ -0,0 +1,6 @@
+before function
+before dotcmd
+subshell start
+before return
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_return_until.out b/bin/sh/dotcmd/out/func_return_until.out
new file mode 100644
index 000000000000..08b45be42f4f
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_return_until.out
@@ -0,0 +1,6 @@
+before function
+before dotcmd
+before until
+before return
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/func_return_while.out b/bin/sh/dotcmd/out/func_return_while.out
new file mode 100644
index 000000000000..27fbcaf88b22
--- /dev/null
+++ b/bin/sh/dotcmd/out/func_return_while.out
@@ -0,0 +1,6 @@
+before function
+before dotcmd
+before while
+before return
+after dotcmd
+after function
diff --git a/bin/sh/dotcmd/out/subshell_break_case.out b/bin/sh/dotcmd/out/subshell_break_case.out
new file mode 100644
index 000000000000..155daea6606d
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_break_case.out
@@ -0,0 +1,8 @@
+subshell start
+before dotcmd
+before case
+before break
+after break, return value: 0
+after case
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_break_compound.out b/bin/sh/dotcmd/out/subshell_break_compound.out
new file mode 100644
index 000000000000..a643ac080d91
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_break_compound.out
@@ -0,0 +1,8 @@
+subshell start
+before dotcmd
+compound start
+before break
+after break, return value: 0
+compound end
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_break_file.out b/bin/sh/dotcmd/out/subshell_break_file.out
new file mode 100644
index 000000000000..2556d89acbbe
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_break_file.out
@@ -0,0 +1,6 @@
+subshell start
+before dotcmd
+before break
+after break, return value: 0
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_break_for.out b/bin/sh/dotcmd/out/subshell_break_for.out
new file mode 100644
index 000000000000..27040a992adf
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_break_for.out
@@ -0,0 +1,7 @@
+subshell start
+before dotcmd
+before for
+before break
+after for
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_break_func.out b/bin/sh/dotcmd/out/subshell_break_func.out
new file mode 100644
index 000000000000..83ec062eed6a
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_break_func.out
@@ -0,0 +1,8 @@
+subshell start
+before dotcmd
+before function
+before break
+after break
+after function
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_break_subshell.out b/bin/sh/dotcmd/out/subshell_break_subshell.out
new file mode 100644
index 000000000000..8a53ac59e578
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_break_subshell.out
@@ -0,0 +1,8 @@
+subshell start
+before dotcmd
+subshell start
+before break
+after break, return value: 0
+subshell end
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_break_until.out b/bin/sh/dotcmd/out/subshell_break_until.out
new file mode 100644
index 000000000000..a31fa5bfa332
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_break_until.out
@@ -0,0 +1,7 @@
+subshell start
+before dotcmd
+before until
+before break
+after until
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_break_while.out b/bin/sh/dotcmd/out/subshell_break_while.out
new file mode 100644
index 000000000000..42eb970ef81d
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_break_while.out
@@ -0,0 +1,7 @@
+subshell start
+before dotcmd
+before while
+before break
+after while
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_continue_case.out b/bin/sh/dotcmd/out/subshell_continue_case.out
new file mode 100644
index 000000000000..4d74b7b151e2
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_continue_case.out
@@ -0,0 +1,8 @@
+subshell start
+before dotcmd
+before case
+before continue
+after continue, return value: 0
+after case
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_continue_compound.out b/bin/sh/dotcmd/out/subshell_continue_compound.out
new file mode 100644
index 000000000000..4328df396efb
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_continue_compound.out
@@ -0,0 +1,8 @@
+subshell start
+before dotcmd
+compound start
+before continue
+after continue, return value: 0
+compound end
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_continue_file.out b/bin/sh/dotcmd/out/subshell_continue_file.out
new file mode 100644
index 000000000000..a4a6e4ae0411
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_continue_file.out
@@ -0,0 +1,6 @@
+subshell start
+before dotcmd
+before continue
+after continue, return value: 0
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_continue_for.out b/bin/sh/dotcmd/out/subshell_continue_for.out
new file mode 100644
index 000000000000..e82988936104
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_continue_for.out
@@ -0,0 +1,8 @@
+subshell start
+before dotcmd
+before for
+before continue
+before continue
+after for
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_continue_func.out b/bin/sh/dotcmd/out/subshell_continue_func.out
new file mode 100644
index 000000000000..e0ead4c87cb9
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_continue_func.out
@@ -0,0 +1,8 @@
+subshell start
+before dotcmd
+before function
+before continue
+after continue
+after function
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_continue_subshell.out b/bin/sh/dotcmd/out/subshell_continue_subshell.out
new file mode 100644
index 000000000000..dfcdfb46a662
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_continue_subshell.out
@@ -0,0 +1,8 @@
+subshell start
+before dotcmd
+subshell start
+before continue
+after continue, return value: 0
+subshell end
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_continue_until.out b/bin/sh/dotcmd/out/subshell_continue_until.out
new file mode 100644
index 000000000000..66e8f9f269ae
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_continue_until.out
@@ -0,0 +1,8 @@
+subshell start
+before dotcmd
+before until
+before continue
+before continue
+after until
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_continue_while.out b/bin/sh/dotcmd/out/subshell_continue_while.out
new file mode 100644
index 000000000000..f1c83f43d394
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_continue_while.out
@@ -0,0 +1,8 @@
+subshell start
+before dotcmd
+before while
+before continue
+before continue
+after while
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_return_case.out b/bin/sh/dotcmd/out/subshell_return_case.out
new file mode 100644
index 000000000000..008d9396a260
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_return_case.out
@@ -0,0 +1,6 @@
+subshell start
+before dotcmd
+before case
+before return
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_return_compound.out b/bin/sh/dotcmd/out/subshell_return_compound.out
new file mode 100644
index 000000000000..bdab2314d44b
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_return_compound.out
@@ -0,0 +1,6 @@
+subshell start
+before dotcmd
+compound start
+before return
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_return_file.out b/bin/sh/dotcmd/out/subshell_return_file.out
new file mode 100644
index 000000000000..43d011dfb970
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_return_file.out
@@ -0,0 +1,5 @@
+subshell start
+before dotcmd
+before return
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_return_for.out b/bin/sh/dotcmd/out/subshell_return_for.out
new file mode 100644
index 000000000000..7cfed898d338
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_return_for.out
@@ -0,0 +1,6 @@
+subshell start
+before dotcmd
+before for
+before return
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_return_func.out b/bin/sh/dotcmd/out/subshell_return_func.out
new file mode 100644
index 000000000000..b695c53484c8
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_return_func.out
@@ -0,0 +1,7 @@
+subshell start
+before dotcmd
+before function
+before return
+after function
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_return_subshell.out b/bin/sh/dotcmd/out/subshell_return_subshell.out
new file mode 100644
index 000000000000..c5ccf597e61c
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_return_subshell.out
@@ -0,0 +1,6 @@
+subshell start
+before dotcmd
+subshell start
+before return
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_return_until.out b/bin/sh/dotcmd/out/subshell_return_until.out
new file mode 100644
index 000000000000..64737ad7341f
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_return_until.out
@@ -0,0 +1,6 @@
+subshell start
+before dotcmd
+before until
+before return
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/subshell_return_while.out b/bin/sh/dotcmd/out/subshell_return_while.out
new file mode 100644
index 000000000000..de520c4493ef
--- /dev/null
+++ b/bin/sh/dotcmd/out/subshell_return_while.out
@@ -0,0 +1,6 @@
+subshell start
+before dotcmd
+before while
+before return
+after dotcmd, return value: 0
+subshell end
diff --git a/bin/sh/dotcmd/out/until_break_case.out b/bin/sh/dotcmd/out/until_break_case.out
new file mode 100644
index 000000000000..f0483b459129
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_break_case.out
@@ -0,0 +1,5 @@
+before until
+before dotcmd
+before case
+before break
+after until
diff --git a/bin/sh/dotcmd/out/until_break_compound.out b/bin/sh/dotcmd/out/until_break_compound.out
new file mode 100644
index 000000000000..a5e37ba7ab5d
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_break_compound.out
@@ -0,0 +1,5 @@
+before until
+before dotcmd
+compound start
+before break
+after until
diff --git a/bin/sh/dotcmd/out/until_break_file.out b/bin/sh/dotcmd/out/until_break_file.out
new file mode 100644
index 000000000000..a2fde4dafe28
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_break_file.out
@@ -0,0 +1,4 @@
+before until
+before dotcmd
+before break
+after until
diff --git a/bin/sh/dotcmd/out/until_break_for.out b/bin/sh/dotcmd/out/until_break_for.out
new file mode 100644
index 000000000000..8b3faf520a8f
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_break_for.out
@@ -0,0 +1,12 @@
+before until
+before dotcmd
+before for
+before break
+after for
+after dotcmd, return value: 0
+before dotcmd
+before for
+before break
+after for
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_break_func.out b/bin/sh/dotcmd/out/until_break_func.out
new file mode 100644
index 000000000000..a83ce2b82c0c
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_break_func.out
@@ -0,0 +1,5 @@
+before until
+before dotcmd
+before function
+before break
+after until
diff --git a/bin/sh/dotcmd/out/until_break_subshell.out b/bin/sh/dotcmd/out/until_break_subshell.out
new file mode 100644
index 000000000000..008d30dfc7d6
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_break_subshell.out
@@ -0,0 +1,10 @@
+before until
+before dotcmd
+subshell start
+before break
+after dotcmd, return value: 0
+before dotcmd
+subshell start
+before break
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_break_until.out b/bin/sh/dotcmd/out/until_break_until.out
new file mode 100644
index 000000000000..05fb94a46af3
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_break_until.out
@@ -0,0 +1,12 @@
+before until
+before dotcmd
+before until
+before break
+after until
+after dotcmd, return value: 0
+before dotcmd
+before until
+before break
+after until
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_break_while.out b/bin/sh/dotcmd/out/until_break_while.out
new file mode 100644
index 000000000000..6ae1f9c4225d
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_break_while.out
@@ -0,0 +1,12 @@
+before until
+before dotcmd
+before while
+before break
+after while
+after dotcmd, return value: 0
+before dotcmd
+before while
+before break
+after while
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_continue_case.out b/bin/sh/dotcmd/out/until_continue_case.out
new file mode 100644
index 000000000000..40028fb08139
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_continue_case.out
@@ -0,0 +1,8 @@
+before until
+before dotcmd
+before case
+before continue
+before dotcmd
+before case
+before continue
+after until
diff --git a/bin/sh/dotcmd/out/until_continue_compound.out b/bin/sh/dotcmd/out/until_continue_compound.out
new file mode 100644
index 000000000000..3641e1e3f5c2
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_continue_compound.out
@@ -0,0 +1,8 @@
+before until
+before dotcmd
+compound start
+before continue
+before dotcmd
+compound start
+before continue
+after until
diff --git a/bin/sh/dotcmd/out/until_continue_file.out b/bin/sh/dotcmd/out/until_continue_file.out
new file mode 100644
index 000000000000..c9f5193b740f
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_continue_file.out
@@ -0,0 +1,6 @@
+before until
+before dotcmd
+before continue
+before dotcmd
+before continue
+after until
diff --git a/bin/sh/dotcmd/out/until_continue_for.out b/bin/sh/dotcmd/out/until_continue_for.out
new file mode 100644
index 000000000000..fd582401d026
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_continue_for.out
@@ -0,0 +1,14 @@
+before until
+before dotcmd
+before for
+before continue
+before continue
+after for
+after dotcmd, return value: 0
+before dotcmd
+before for
+before continue
+before continue
+after for
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_continue_func.out b/bin/sh/dotcmd/out/until_continue_func.out
new file mode 100644
index 000000000000..6beb16323068
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_continue_func.out
@@ -0,0 +1,8 @@
+before until
+before dotcmd
+before function
+before continue
+before dotcmd
+before function
+before continue
+after until
diff --git a/bin/sh/dotcmd/out/until_continue_subshell.out b/bin/sh/dotcmd/out/until_continue_subshell.out
new file mode 100644
index 000000000000..534509e7e69d
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_continue_subshell.out
@@ -0,0 +1,10 @@
+before until
+before dotcmd
+subshell start
+before continue
+after dotcmd, return value: 0
+before dotcmd
+subshell start
+before continue
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_continue_until.out b/bin/sh/dotcmd/out/until_continue_until.out
new file mode 100644
index 000000000000..ddfeb2797a7e
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_continue_until.out
@@ -0,0 +1,14 @@
+before until
+before dotcmd
+before until
+before continue
+before continue
+after until
+after dotcmd, return value: 0
+before dotcmd
+before until
+before continue
+before continue
+after until
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_continue_while.out b/bin/sh/dotcmd/out/until_continue_while.out
new file mode 100644
index 000000000000..5707821eca00
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_continue_while.out
@@ -0,0 +1,14 @@
+before until
+before dotcmd
+before while
+before continue
+before continue
+after while
+after dotcmd, return value: 0
+before dotcmd
+before while
+before continue
+before continue
+after while
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_return_case.out b/bin/sh/dotcmd/out/until_return_case.out
new file mode 100644
index 000000000000..70dd420505cd
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_return_case.out
@@ -0,0 +1,10 @@
+before until
+before dotcmd
+before case
+before return
+after dotcmd, return value: 0
+before dotcmd
+before case
+before return
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_return_compound.out b/bin/sh/dotcmd/out/until_return_compound.out
new file mode 100644
index 000000000000..145d2c580f07
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_return_compound.out
@@ -0,0 +1,10 @@
+before until
+before dotcmd
+compound start
+before return
+after dotcmd, return value: 0
+before dotcmd
+compound start
+before return
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_return_file.out b/bin/sh/dotcmd/out/until_return_file.out
new file mode 100644
index 000000000000..5b0adb198c6d
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_return_file.out
@@ -0,0 +1,8 @@
+before until
+before dotcmd
+before return
+after dotcmd, return value: 0
+before dotcmd
+before return
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_return_for.out b/bin/sh/dotcmd/out/until_return_for.out
new file mode 100644
index 000000000000..b113e8c0552a
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_return_for.out
@@ -0,0 +1,10 @@
+before until
+before dotcmd
+before for
+before return
+after dotcmd, return value: 0
+before dotcmd
+before for
+before return
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_return_func.out b/bin/sh/dotcmd/out/until_return_func.out
new file mode 100644
index 000000000000..1ab16ab70360
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_return_func.out
@@ -0,0 +1,12 @@
+before until
+before dotcmd
+before function
+before return
+after function
+after dotcmd, return value: 0
+before dotcmd
+before function
+before return
+after function
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_return_subshell.out b/bin/sh/dotcmd/out/until_return_subshell.out
new file mode 100644
index 000000000000..d44463108242
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_return_subshell.out
@@ -0,0 +1,10 @@
+before until
+before dotcmd
+subshell start
+before return
+after dotcmd, return value: 0
+before dotcmd
+subshell start
+before return
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_return_until.out b/bin/sh/dotcmd/out/until_return_until.out
new file mode 100644
index 000000000000..39980179a781
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_return_until.out
@@ -0,0 +1,10 @@
+before until
+before dotcmd
+before until
+before return
+after dotcmd, return value: 0
+before dotcmd
+before until
+before return
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/until_return_while.out b/bin/sh/dotcmd/out/until_return_while.out
new file mode 100644
index 000000000000..9b140cf7a0a3
--- /dev/null
+++ b/bin/sh/dotcmd/out/until_return_while.out
@@ -0,0 +1,10 @@
+before until
+before dotcmd
+before while
+before return
+after dotcmd, return value: 0
+before dotcmd
+before while
+before return
+after dotcmd, return value: 0
+after until
diff --git a/bin/sh/dotcmd/out/while_break_case.out b/bin/sh/dotcmd/out/while_break_case.out
new file mode 100644
index 000000000000..1b0731fcaf38
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_break_case.out
@@ -0,0 +1,5 @@
+before while
+before dotcmd
+before case
+before break
+after while
diff --git a/bin/sh/dotcmd/out/while_break_compound.out b/bin/sh/dotcmd/out/while_break_compound.out
new file mode 100644
index 000000000000..05c23eb4284c
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_break_compound.out
@@ -0,0 +1,5 @@
+before while
+before dotcmd
+compound start
+before break
+after while
diff --git a/bin/sh/dotcmd/out/while_break_file.out b/bin/sh/dotcmd/out/while_break_file.out
new file mode 100644
index 000000000000..cb70ae19221e
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_break_file.out
@@ -0,0 +1,4 @@
+before while
+before dotcmd
+before break
+after while
diff --git a/bin/sh/dotcmd/out/while_break_for.out b/bin/sh/dotcmd/out/while_break_for.out
new file mode 100644
index 000000000000..b94eac165604
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_break_for.out
@@ -0,0 +1,12 @@
+before while
+before dotcmd
+before for
+before break
+after for
+after dotcmd, return value: 0
+before dotcmd
+before for
+before break
+after for
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_break_func.out b/bin/sh/dotcmd/out/while_break_func.out
new file mode 100644
index 000000000000..7d54c1514a67
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_break_func.out
@@ -0,0 +1,5 @@
+before while
+before dotcmd
+before function
+before break
+after while
diff --git a/bin/sh/dotcmd/out/while_break_subshell.out b/bin/sh/dotcmd/out/while_break_subshell.out
new file mode 100644
index 000000000000..234cd663c2e0
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_break_subshell.out
@@ -0,0 +1,10 @@
+before while
+before dotcmd
+subshell start
+before break
+after dotcmd, return value: 0
+before dotcmd
+subshell start
+before break
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_break_until.out b/bin/sh/dotcmd/out/while_break_until.out
new file mode 100644
index 000000000000..f3602302673f
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_break_until.out
@@ -0,0 +1,12 @@
+before while
+before dotcmd
+before until
+before break
+after until
+after dotcmd, return value: 0
+before dotcmd
+before until
+before break
+after until
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_break_while.out b/bin/sh/dotcmd/out/while_break_while.out
new file mode 100644
index 000000000000..451b0a23671b
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_break_while.out
@@ -0,0 +1,12 @@
+before while
+before dotcmd
+before while
+before break
+after while
+after dotcmd, return value: 0
+before dotcmd
+before while
+before break
+after while
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_continue_case.out b/bin/sh/dotcmd/out/while_continue_case.out
new file mode 100644
index 000000000000..d7f412c0d554
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_continue_case.out
@@ -0,0 +1,8 @@
+before while
+before dotcmd
+before case
+before continue
+before dotcmd
+before case
+before continue
+after while
diff --git a/bin/sh/dotcmd/out/while_continue_compound.out b/bin/sh/dotcmd/out/while_continue_compound.out
new file mode 100644
index 000000000000..001904764a68
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_continue_compound.out
@@ -0,0 +1,8 @@
+before while
+before dotcmd
+compound start
+before continue
+before dotcmd
+compound start
+before continue
+after while
diff --git a/bin/sh/dotcmd/out/while_continue_file.out b/bin/sh/dotcmd/out/while_continue_file.out
new file mode 100644
index 000000000000..9070dea4528e
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_continue_file.out
@@ -0,0 +1,6 @@
+before while
+before dotcmd
+before continue
+before dotcmd
+before continue
+after while
diff --git a/bin/sh/dotcmd/out/while_continue_for.out b/bin/sh/dotcmd/out/while_continue_for.out
new file mode 100644
index 000000000000..98696ee40190
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_continue_for.out
@@ -0,0 +1,14 @@
+before while
+before dotcmd
+before for
+before continue
+before continue
+after for
+after dotcmd, return value: 0
+before dotcmd
+before for
+before continue
+before continue
+after for
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_continue_func.out b/bin/sh/dotcmd/out/while_continue_func.out
new file mode 100644
index 000000000000..77efc2c9c87a
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_continue_func.out
@@ -0,0 +1,8 @@
+before while
+before dotcmd
+before function
+before continue
+before dotcmd
+before function
+before continue
+after while
diff --git a/bin/sh/dotcmd/out/while_continue_subshell.out b/bin/sh/dotcmd/out/while_continue_subshell.out
new file mode 100644
index 000000000000..b4106a1e2d83
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_continue_subshell.out
@@ -0,0 +1,10 @@
+before while
+before dotcmd
+subshell start
+before continue
+after dotcmd, return value: 0
+before dotcmd
+subshell start
+before continue
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_continue_until.out b/bin/sh/dotcmd/out/while_continue_until.out
new file mode 100644
index 000000000000..7f893a015a6a
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_continue_until.out
@@ -0,0 +1,14 @@
+before while
+before dotcmd
+before until
+before continue
+before continue
+after until
+after dotcmd, return value: 0
+before dotcmd
+before until
+before continue
+before continue
+after until
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_continue_while.out b/bin/sh/dotcmd/out/while_continue_while.out
new file mode 100644
index 000000000000..317be17fadc4
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_continue_while.out
@@ -0,0 +1,14 @@
+before while
+before dotcmd
+before while
+before continue
+before continue
+after while
+after dotcmd, return value: 0
+before dotcmd
+before while
+before continue
+before continue
+after while
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_return_case.out b/bin/sh/dotcmd/out/while_return_case.out
new file mode 100644
index 000000000000..abb6a4afcfab
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_return_case.out
@@ -0,0 +1,10 @@
+before while
+before dotcmd
+before case
+before return
+after dotcmd, return value: 0
+before dotcmd
+before case
+before return
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_return_compound.out b/bin/sh/dotcmd/out/while_return_compound.out
new file mode 100644
index 000000000000..b37418b3d34e
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_return_compound.out
@@ -0,0 +1,10 @@
+before while
+before dotcmd
+compound start
+before return
+after dotcmd, return value: 0
+before dotcmd
+compound start
+before return
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_return_file.out b/bin/sh/dotcmd/out/while_return_file.out
new file mode 100644
index 000000000000..1c4791ef7639
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_return_file.out
@@ -0,0 +1,8 @@
+before while
+before dotcmd
+before return
+after dotcmd, return value: 0
+before dotcmd
+before return
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_return_for.out b/bin/sh/dotcmd/out/while_return_for.out
new file mode 100644
index 000000000000..0569d6fe6707
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_return_for.out
@@ -0,0 +1,10 @@
+before while
+before dotcmd
+before for
+before return
+after dotcmd, return value: 0
+before dotcmd
+before for
+before return
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_return_func.out b/bin/sh/dotcmd/out/while_return_func.out
new file mode 100644
index 000000000000..cb5a30853a10
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_return_func.out
@@ -0,0 +1,12 @@
+before while
+before dotcmd
+before function
+before return
+after function
+after dotcmd, return value: 0
+before dotcmd
+before function
+before return
+after function
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_return_subshell.out b/bin/sh/dotcmd/out/while_return_subshell.out
new file mode 100644
index 000000000000..161a227239bc
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_return_subshell.out
@@ -0,0 +1,10 @@
+before while
+before dotcmd
+subshell start
+before return
+after dotcmd, return value: 0
+before dotcmd
+subshell start
+before return
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_return_until.out b/bin/sh/dotcmd/out/while_return_until.out
new file mode 100644
index 000000000000..d84a5f71dca8
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_return_until.out
@@ -0,0 +1,10 @@
+before while
+before dotcmd
+before until
+before return
+after dotcmd, return value: 0
+before dotcmd
+before until
+before return
+after dotcmd, return value: 0
+after while
diff --git a/bin/sh/dotcmd/out/while_return_while.out b/bin/sh/dotcmd/out/while_return_while.out
new file mode 100644
index 000000000000..4eeaaa9b5244
--- /dev/null
+++ b/bin/sh/dotcmd/out/while_return_while.out
@@ -0,0 +1,10 @@
+before while
+before dotcmd
+before while
+before return
+after dotcmd, return value: 0
+before dotcmd
+before while
+before return
+after dotcmd, return value: 0
+after while