diff --git a/spike/x86/survey.sh b/spike/x86/survey.sh index 7fe1aa2..1eb0fdd 100755 --- a/spike/x86/survey.sh +++ b/spike/x86/survey.sh @@ -82,6 +82,9 @@ declare -a match=() differ=() refused=() nox86=() skip=() for src in "$corpus"/test/programs/*.flan "$corpus"/spike/x86/*.flan \ "$corpus"/spike/js/*.flan; do + # An unmatched glob comes through as its own pattern; a corpus that is + # missing one of these directories is a smaller sweep, not an error. + [ -e "$src" ] || continue name=$(basename "$src" .flan) if [ $# -gt 0 ]; then want=0 diff --git a/test/dune b/test/dune index 6ee3325..1f2004e 100644 --- a/test/dune +++ b/test/dune @@ -196,6 +196,11 @@ (deps (file %{workspace_root}/spike/x86/survey.sh) (glob_files %{workspace_root}/spike/x86/*.flan) + ; The js spike's programs are plain flan programs and the sweep reads them + ; now, so they have to be in the build tree the sweep runs from -- otherwise + ; the glob matches nothing, and nothing is exactly what it was reporting + ; while p1-int-semantics.flan sat there with a wrong shift in it. + (glob_files %{workspace_root}/spike/js/*.flan) (file %{workspace_root}/bin/main.exe) (file %{workspace_root}/calc-me.flan) (file %{workspace_root}/sand.flan)