From 6000cc5ad7b32f301e529eda20238f88c19e1294 Mon Sep 17 00:00:00 2001 From: Tim-ats-d Date: Thu, 20 Nov 2025 16:20:23 +0100 Subject: [PATCH 1/3] Add a reproduction for issue #2000. --- tests/test-dirs/issue2000.t | 41 +++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 tests/test-dirs/issue2000.t diff --git a/tests/test-dirs/issue2000.t b/tests/test-dirs/issue2000.t new file mode 100644 index 000000000..c4dc11bc4 --- /dev/null +++ b/tests/test-dirs/issue2000.t @@ -0,0 +1,41 @@ + $ cat >main.ml < let a : type b. 'a as b list = [] + > EOF + +FIXME: This syntactically perfectly valid OCaml produce two unrelated cryptic error message. +See https://github.com/ocaml/merlin/issues/2000. + $ $MERLIN single errors -filename main.ml Date: Thu, 20 Nov 2025 16:22:58 +0100 Subject: [PATCH 2/3] Add a changelog entry. --- CHANGES.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGES.md b/CHANGES.md index a1b98ec3d..f9157da20 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -8,6 +8,7 @@ unreleased + test suite - Add a test to ensure the behavior showed in issue #1517 is no longer relevant (#1995) - Add a test to ensure the code fragment exhibited in issue #1118 no longer makes Merlin crash (#1996) + - Add a test case illustrating how a snippet produces two unrelated errors in issue #2000. (#2003) merlin 5.6 ========== From 43eba74594882a0b3299716b3e13c6442351f0f7 Mon Sep 17 00:00:00 2001 From: Tim ats Date: Mon, 8 Dec 2025 14:57:29 +0100 Subject: [PATCH 3/3] Fix typo. Co-authored-by: Ulysse <5031221+voodoos@users.noreply.github.com> --- tests/test-dirs/issue2000.t | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test-dirs/issue2000.t b/tests/test-dirs/issue2000.t index c4dc11bc4..5d90d91d5 100644 --- a/tests/test-dirs/issue2000.t +++ b/tests/test-dirs/issue2000.t @@ -2,7 +2,7 @@ > let a : type b. 'a as b list = [] > EOF -FIXME: This syntactically perfectly valid OCaml produce two unrelated cryptic error message. +FIXME: This syntactically incorrect OCaml snippet produces two unrelated cryptic error message. See https://github.com/ocaml/merlin/issues/2000. $ $MERLIN single errors -filename main.ml