Windows: the language server reads the compiler's \r\n lines (completion after an import's other name); Wine is set up before the cross tests

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016GzNP6r8dg6WDxUVZy8wjL
This commit is contained in:
Nexoniarz 2026-10-29 11:58:24 +01:00
commit 961ba951ec
2 changed files with 3 additions and 2 deletions

View file

@ -306,7 +306,7 @@ fn parseDiag(str line) -> Diag {
fn parseOutput(str output) -> Analysis { fn parseOutput(str output) -> Analysis {
a := Analysis() a := Analysis()
for line in output.split("\n") { for line in output.replace("\r", "").split("\n") { // Windows ends the compiler's lines with \r\n
if line.starts_with("@") { if line.starts_with("@") {
f := splitTabs(line) f := splitTabs(line)
tag := f[0] tag := f[0]

View file

@ -12,7 +12,8 @@ target=${1:?usage: tests/cross.sh windows|arm64}
FINCH=${FINCH:-../build/finch} FINCH=${FINCH:-../build/finch}
export WINEDEBUG=-all export WINEDEBUG=-all
case $target in case $target in
windows) runner=wine; ext=.exe ;; windows) runner=wine; ext=.exe
wine cmd /c exit > /dev/null 2>&1 || true ;; # the first run sets Wine up and says so: not in a test's output
arm64) runner=qemu-aarch64; ext= ;; arm64) runner=qemu-aarch64; ext= ;;
*) echo "unknown target $target"; exit 2 ;; *) echo "unknown target $target"; exit 2 ;;
esac esac