Repository navigation
Test GADTs and other OCaml-derived type and module features - #9076
Conversation
ChangelogNo changelog entry. Semantic Diff1 commit · Full page ✏️ Test GADTs and other OCaml-derived type and module features09be8ce · cknitt + Claude · Oct 27, 2026, 12:39 UTC · edited GADTs, existentials, polymorphic record fields, constraint, private and indexed extensible types, destructive substitution and typed first-class modules had no behavioural tests. Part of #9074. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #9076 +/- ##
==========================================
+ Coverage 81.48% 81.69% +0.20%
==========================================
Files 460 460
Lines 64728 64728
==========================================
+ Hits 52744 52879 +135
+ Misses 11984 11849 -135 🚀 New features to boost your workflow:
|
rescript
@rescript/belt
@rescript/darwin-arm64
@rescript/linux-arm64
@rescript/linux-x64
@rescript/runtime
@rescript/win32-x64
commit: |
|
Developer playground preview: https://rescript-lang.github.io/rescript/dev-playground/?version=pr-9076 |
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex Review: Didn't find any major issues. Hooray! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
3b48492 to
78f82ac
Compare
GADTs, existentials, polymorphic record fields, constraint, private and indexed extensible types, destructive substitution and typed first-class modules had no behavioural tests. Part of #9074. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Kbf3gLMawVgtmiKy3TMBc3 Claude-Session: https://claude.ai/code/session_01Kr4cjoUi2f5VpMvE6wT9bo Signed-off-by: Christoph Knittel <ck@cca.io>
78f82ac to
09be8ce
Compare
cristianoc
left a comment
There was a problem hiding this comment.
Looks good to me. Thanks for the changes.
Part of #9074.
Behavioural tests for OCaml-derived features that had little or no coverage:
gadt_test: a typed evaluator, type witnesses with refined matches, an equality witness, existentials (record, tuple and first-class module payloads), a typed printf, GADTs with@as,@tagand@unboxed, and polymorphic recursion.advanced_types_test: polymorphic record fields, explicit polymorphic annotations,constraint,as 'a,#...tpatterns, private types, variance, destructive substitution,with module,module type of, higher-order and generative functors, and typed first-class modules.extensible_variant_test: inline records with@as, rebinding, indexed extensions, private extensible types, and generative local exceptions.Fixtures for the bugs found are added by the PRs that fix them.
🤖 Generated with Claude Code
https://claude.ai/code/session_01Kbf3gLMawVgtmiKy3TMBc3