浏览代码

docs/MC4 reorganization: per-project docs/ and MC4/ folders, runners use MC4/

Eric Streit 3 周之前
父节点
当前提交
e31b63d870
共有 18 个文件被更改,包括 18 次插入 和 5 次删除
  1. 0 0
      MC4/OkMinimal.MC4
  2. 0 0
      MC4/OkProc.MC4
  3. 0 0
      MC4/RArith.MC4
  4. 0 0
      MC4/RArr.MC4
  5. 0 0
      MC4/RBool.MC4
  6. 0 0
      MC4/RConst.MC4
  7. 0 0
      MC4/RFlow.MC4
  8. 0 0
      MC4/RMod.MC4
  9. 0 0
      MC4/RNested.MC4
  10. 0 0
      MC4/RProc.MC4
  11. 0 0
      MC4/RPtr.MC4
  12. 0 0
      MC4/RReal.MC4
  13. 0 0
      MC4/RRec.MC4
  14. 0 0
      MC4/RSet.MC4
  15. 0 0
      MC4/RStr.MC4
  16. 0 0
      MC4/RVarPar.MC4
  17. 0 0
      MC4/Showcase.MC4
  18. 18 5
      run_tests.sh

+ 0 - 0
OkMinimal.MC4 → MC4/OkMinimal.MC4


+ 0 - 0
OkProc.MC4 → MC4/OkProc.MC4


+ 0 - 0
RArith.MC4 → MC4/RArith.MC4


+ 0 - 0
RArr.MC4 → MC4/RArr.MC4


+ 0 - 0
RBool.MC4 → MC4/RBool.MC4


+ 0 - 0
RConst.MC4 → MC4/RConst.MC4


+ 0 - 0
RFlow.MC4 → MC4/RFlow.MC4


+ 0 - 0
RMod.MC4 → MC4/RMod.MC4


+ 0 - 0
RNested.MC4 → MC4/RNested.MC4


+ 0 - 0
RProc.MC4 → MC4/RProc.MC4


+ 0 - 0
RPtr.MC4 → MC4/RPtr.MC4


+ 0 - 0
RReal.MC4 → MC4/RReal.MC4


+ 0 - 0
RRec.MC4 → MC4/RRec.MC4


+ 0 - 0
RSet.MC4 → MC4/RSet.MC4


+ 0 - 0
RStr.MC4 → MC4/RStr.MC4


+ 0 - 0
RVarPar.MC4 → MC4/RVarPar.MC4


+ 0 - 0
Showcase.MC4 → MC4/Showcase.MC4


+ 18 - 5
run_tests.sh

@@ -8,6 +8,7 @@ expect_ok() {
   else
     fail=$((fail+1)); echo "FAIL(ok, rejected): $1"
   fi
+  collect_mcd
 }
 expect_fail() {
   if ./M2comp "$1" 2>&1 | grep -q "Incorrect source"; then
@@ -15,6 +16,7 @@ expect_fail() {
   else
     fail=$((fail+1)); echo "FAIL(fail, accepted): $1"
   fi
+  collect_mcd
 }
 expect_dump() {
   if ./M2comp "$1" 2>&1 | grep -q "$2"; then
@@ -22,19 +24,29 @@ expect_dump() {
   else
     fail=$((fail+1)); echo "FAIL(ast): $1 [$2]"
   fi
+  collect_mcd
 }
-MCINT="${MCINT:-../mc64/mcint}"
+MCINT="${MCINT:-../m-code-64/mcint}"
+mkdir -p MC4
 MCTIMEOUT="${MCTIMEOUT:-10}"
+# MGen emits <Module>.MC4 in the current directory; the run helpers
+# below collect it into MC4/ and run it from there.
+collect_mcd() {
+  for f in *.MC4; do
+    [ -f "$f" ] && mv -f "$f" MC4/
+  done
+}
 expect_run() {
   # $1 = test file, $2 = expected printed ExitCode value
   name="$1"
   want="$2"
   mod=$(head -n 1 "tests/$name" | cut -d' ' -f2 | cut -d';' -f1)
-  mcd="$mod.MC4"
-  rm -f "$mcd"
+  mcd="MC4/$mod.MC4"
+  rm -f "$mcd" "$mod.MC4"
   if ./M2comp "tests/$name" 2>&1 | grep -q "Incorrect source"; then
     fail=$((fail+1)); echo "FAIL(run): $name rejected"; return
   fi
+  [ -f "$mod.MC4" ] && mv -f "$mod.MC4" "$mcd"
   if [ ! -f "$mcd" ]; then
     fail=$((fail+1)); echo "FAIL(run): $name no $mcd"; return
   fi
@@ -53,11 +65,12 @@ expect_run_none() {
   # $1 = test file — must compile and run silent (terminating)
   name="$1"
   mod=$(head -n 1 "tests/$name" | cut -d' ' -f2 | cut -d';' -f1)
-  mcd="$mod.MC4"
-  rm -f "$mcd"
+  mcd="MC4/$mod.MC4"
+  rm -f "$mcd" "$mod.MC4"
   if ./M2comp "tests/$name" 2>&1 | grep -q "Incorrect source"; then
     fail=$((fail+1)); echo "FAIL(silent): $name rejected"; return
   fi
+  [ -f "$mod.MC4" ] && mv -f "$mod.MC4" "$mcd"
   if [ ! -f "$mcd" ]; then
     fail=$((fail+1)); echo "FAIL(silent): $name no $mcd"; return
   fi