You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm getting an lsp-server crash; it's not clear what initiates it, but it happens almost immediately after invoking ocaml.server.restart:
[Error - 7:39:15 PM] Server process exited with code 0.
detached: /-----------------------------------------------------------------------
| Internal error: Uncaught exception.
| Invalid_argument("List.combine")
| Raised at Stdlib.invalid_arg in file "stdlib.ml", line 30, characters 20-45
| Called from Stdlib__List.combine in file "list.ml", line 305, characters 36-49
| Called from Merlin_specific__Browse_raw.of_expression_desc in file "src/ocaml/merlin_specific/browse_raw.ml", line 392, characters 23-54
| Called from Merlin_specific__Browse_raw.fold_node in file "src/ocaml/merlin_specific/browse_raw.ml" (inlined), line 698, characters 2-24
| Called from Merlin_specific__Browse_raw.all_holes.aux in file "src/ocaml/merlin_specific/browse_raw.ml", line 987, characters 4-28
| Called from Merlin_specific__Browse_raw.(**) in file "src/ocaml/merlin_specific/browse_raw.ml" (inlined), line 233, characters 11-25
| Called from Merlin_specific__Browse_raw.of_expression in file "src/ocaml/merlin_specific/browse_raw.ml", line 267, characters 22-78
| Called from Merlin_specific__Browse_raw.(**) in file "src/ocaml/merlin_specific/browse_raw.ml" (inlined), line 233, characters 11-25
| Called from Merlin_specific__Browse_raw.of_expression_desc in file "src/ocaml/merlin_specific/browse_raw.ml", line 326, characters 4-53
| Called from Merlin_specific__Browse_raw.(**) in file "src/ocaml/merlin_specific/browse_raw.ml" (inlined), line 233, characters 11-25
| Called from Merlin_specific__Browse_raw.of_expression in file "src/ocaml/merlin_specific/browse_raw.ml", line 267, characters 22-78
| Called from Merlin_specific__Browse_raw.(**) in file "src/ocaml/merlin_specific/browse_raw.ml" (inlined), line 233, characters 11-25
| Called from Merlin_specific__Browse_raw.of_expression_desc in file "src/ocaml/merlin_specific/browse_raw.ml", line 326, characters 4-53
| Called from Merlin_specific__Browse_raw.(**) in file "src/ocaml/merlin_specific/browse_raw.ml" (inlined), line 233, characters 11-25
| Called from Merlin_specific__Browse_raw.of_expression in file "src/ocaml/merlin_specific/browse_raw.ml", line 267, characters 22-78
| Called from Merlin_specific__Browse_raw.(**) in file "src/ocaml/merlin_specific/browse_raw.ml" (inlined), line 233, characters 11-25
| Called from Merlin_specific__Browse_raw.of_node in file "src/ocaml/merlin_specific/browse_raw.ml", line 575, characters 24-84
| Called from Merlin_specific__Browse_raw.list_fold in file "src/ocaml/merlin_specific/browse_raw.ml", line 236, characters 37-53
| Called from Merlin_specific__Browse_raw.(**) in file "src/ocaml/merlin_specific/browse_raw.ml" (inlined), line 233, characters 11-25
| Called from Merlin_specific__Browse_raw.of_expression in file "src/ocaml/merlin_specific/browse_raw.ml", line 267, characters 22-78
| Called from Merlin_specific__Browse_raw.list_fold in file "src/ocaml/merlin_specific/browse_raw.ml", line 236, characters 37-53
| Called from Merlin_specific__Browse_raw.list_fold_with_next in file "src/ocaml/merlin_specific/browse_raw.ml", line 247, characters 59-84
| Called from Merlin_specific__Browse_raw.all_holes in file "src/ocaml/merlin_specific/browse_raw.ml", line 989, characters 2-20
| Called from Query_commands.dispatch.loc_and_types_of_holes in file "src/frontend/query_commands.ml", line 613, characters 15-42
| Called from Stdlib__List.map in file "list.ml", line 92, characters 20-23
| Called from Merlin_utils__Std.List.concat_map in file "src/utils/std.ml" (inlined), line 129, characters 32-42
| Called from Query_commands.dispatch in file "src/frontend/query_commands.ml", line 619, characters 4-51
| Called from Ocaml_lsp_server__Diagnostics.merlin_diagnostics.(fun) in file "ocaml-lsp-server/src/diagnostics.ml", line 339, characters 12-50
| Called from Merlin_utils__Std.let_ref in file "src/utils/std.ml", line 693, characters 8-12
| Re-raised at Merlin_utils__Std.let_ref in file "src/utils/std.ml", line 695, characters 30-39
| Called from Merlin_utils__Misc.try_finally in file "src/utils/misc.ml", line 45, characters 8-15
| Re-raised at Merlin_utils__Misc.try_finally in file "src/utils/misc.ml", line 62, characters 10-24
| Called from Stdlib__Fun.protect in file "fun.ml", line 33, characters 8-15
| Re-raised at Stdlib__Fun.protect in file "fun.ml", line 38, characters 6-52
| Called from Merlin_kernel__Mocaml.with_state in file "src/kernel/mocaml.ml", line 18, characters 8-38
| Re-raised at Merlin_kernel__Mocaml.with_state in file "src/kernel/mocaml.ml", line 20, characters 42-53
| Called from Ocaml_lsp_server__Document.Single_pipeline.use.(fun) in file "ocaml-lsp-server/src/document.ml", line 147, characters 22-77
| Called from Stdune__Exn_with_backtrace.try_with in file "otherlibs/stdune/src/exn_with_backtrace.ml", line 9, characters 8-12
| Re-raised at Stdune__Exn.raise_with_backtrace in file "otherlibs/stdune/src/exn.ml" (inlined), line 36, characters 27-56
| Called from Stdune__Exn_with_backtrace.reraise in file "otherlibs/stdune/src/exn_with_backtrace.ml", line 18, characters 33-71
| Called from Fiber__Core.O.(>>|).(fun) in file "fiber/src/core.ml", line 250, characters 36-41
| Called from Fiber__Scheduler.exec in file "fiber/src/scheduler.ml", line 73, characters 8-11
\-----------------------------------------------------------------------
The only invocation of List.combine seems to be here:
That's definitively a Merlin issue. We already fixed issues with that feature (my guess is that it's the let* (), () = Lwt.both sleeper leaker in expression that breaks merlin), @ELLIOTTCABLE could confirm that you are running the latest merlin-lib / ocaml-lsp versions ?
I just made a small project with your file, OCaml 4.14, ocaml-lsp-server 1.17.0 and merlin-lib 4.13-414 and I am not able to reproduce the crash with vscode.
I'm getting an lsp-server crash; it's not clear what initiates it, but it happens almost immediately after invoking
ocaml.server.restart
:The only invocation of
List.combine
seems to be here:https://github.com/ocaml/merlin/blob/v4.11-414/src/ocaml/merlin_specific/browse_raw.ml#L382-L393
File contents
Full "OCaml Language Server" output pane contents
Platform & versions
ocaml-lsp-server
: 1.17.0The text was updated successfully, but these errors were encountered: