Repository navigation
Commit ab291eb
Isolate Windows shared tests in a per-test working directory
The Windows shared-test bat wrote fixed-name artifacts (<stem>.obj,
<stem>.dll, <stem>.lib) directly in the shared test/tester cwd, while
the imported-module stem is not unique across test variants - e.g.
decl_class.ts feeds the -shared, -compile-time and -jit variants, and
export_vars2.ts feeds two variants. Under `ctest -j` these run
concurrently and stomp/delete each other's artifacts, causing random
failures (e.g. test-compile-shared-decl-emit-class,
test-compile-shared-export-import-vars-2).
Port the per-test WORKDIR isolation the Linux branch already uses:
create a unique <tempname>_wd dir, cd into it, build/link/run there
(the shared lib keeps its real <stem> name needed for import
resolution but can no longer collide), write .txt/.err to the parent
dir the runner reads from, then remove the dir.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>1 parent 82ff7ce commit ab291eb
1 file changed
Lines changed: 18 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
428 | 428 | | |
429 | 429 | | |
430 | 430 | | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
| 440 | + | |
431 | 441 | | |
432 | 442 | | |
433 | 443 | | |
| |||
472 | 482 | | |
473 | 483 | | |
474 | 484 | | |
475 | | - | |
| 485 | + | |
476 | 486 | | |
477 | 487 | | |
478 | 488 | | |
| |||
494 | 504 | | |
495 | 505 | | |
496 | 506 | | |
497 | | - | |
| 507 | + | |
498 | 508 | | |
499 | 509 | | |
500 | 510 | | |
| |||
506 | 516 | | |
507 | 517 | | |
508 | 518 | | |
| 519 | + | |
| 520 | + | |
| 521 | + | |
| 522 | + | |
| 523 | + | |
| 524 | + | |
509 | 525 | | |
510 | 526 | | |
511 | 527 | | |
| |||
0 commit comments