From 85e747e065a6f4b2236acc8b3a2471de4d831c95 Mon Sep 17 00:00:00 2001 From: NeilBrown Date: Sat, 30 Oct 2021 15:49:08 +1100 Subject: [PATCH] oceani-tests: add test for declaring a CondScope variable If a variable was declared in all branches of a structures command, it may or may not be declared as something else afterwards. We need to test both options. Signed-off-by: NeilBrown --- csrc/oceani-tests.mdc | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/csrc/oceani-tests.mdc b/csrc/oceani-tests.mdc index 87b0206..11c3f19 100644 --- a/csrc/oceani-tests.mdc +++ b/csrc/oceani-tests.mdc @@ -80,7 +80,7 @@ arguments separated from the name by commas. For each test, there is a section @mv *.gcov coverage ; [ -f .gcov ] && mv .gcov coverage || true @ awk '/NOTEST/ { next } /^ *[1-9]/ {ran+=1} /^ *###/ {skip+=1} \ END {printf "coverage: %6.2f%%\n", ran * 100 / (ran + skip); \ - if (ran < (ran + skip) *0.9469) exit(1) }' \ + if (ran < (ran + skip) *0.9495) exit(1) }' \ coverage/oceani.mdc.gcov @rm -f .tmp* @@ -198,8 +198,21 @@ Test merging of variables from multiple cases print num,", ", print + for i:=0; then i=i+1; while i < 5: + switch i: + case 0: num:="zero" + case 1: num:="one" + case 2: num:="two" + case 3: num:="three" + else num:="many" + // re-declare a CondScope variable + num := i*i + print num,", ", + print + ###### output: varmerge zero , one , two , three , many , + 0 , 1 , 4 , 9 , 16 , ## Conditions and Loops -- 2.43.0