Skip to content

Add missing TCK-8 suspension tests and exnref EXEC-5 coverage#13

Merged
IRus merged 3 commits into
mainfrom
tests/tck8-suspension-gaps
Jul 19, 2026
Merged

Add missing TCK-8 suspension tests and exnref EXEC-5 coverage#13
IRus merged 3 commits into
mainfrom
tests/tck8-suspension-gaps

Conversation

@IRus

@IRus IRus commented Jul 19, 2026

Copy link
Copy Markdown
Member

The §8.5 suite had three gaps against [TCK-8]/[EXEC-5]: no withTimeout test around deep recursion, no cancellation tests at the parked states (WaitingForFuel/Paused/InHostImport), and the guest-can't-catch-host-exceptions test only covered legacy EH, not try_table.

New tests in SuspensionSemanticsTest:

  • withTimeout around recursive fib(40): TimeoutCancellationException escapes, store is poisoned, next call fails fast with PoisonedStoreException
  • cancellation while parked in WaitingForFuel, Paused, and InHostImport — each poisons the store per [EXEC-6]
  • cancellation raised inside a guest try_table catch_all bypasses the guest handler

New test in GcEhExecutionTest:

  • try_table catch_all cannot catch a host exception — same identity assertion as the existing legacy-EH test, for the standardized instruction set

No runtime changes; behavior already matched [EXEC-6], these tests pin it.

Tested: :core:jvmTest and :core:macosArm64Test, both green (SuspensionSemanticsTest 6/6, GcEhExecutionTest 11/11).

🤖 Generated with Claude Code

IRus and others added 3 commits July 19, 2026 09:56
- withTimeout around deep guest recursion (fib) poisons the store
- cancellation while parked in WaitingForFuel, Paused, and InHostImport
- cancellation bypasses guest try_table catch_all handlers
- try_table catch_all cannot catch host exceptions, mirroring the
  legacy-EH test for the standardized instruction set

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@IRus
IRus merged commit 6a8a7a9 into main Jul 19, 2026
15 checks passed
@IRus
IRus deleted the tests/tck8-suspension-gaps branch July 19, 2026 09:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant