-
-
Notifications
You must be signed in to change notification settings - Fork 400
Description
Your environment
Which OS do you use?
NixOS
Which version of GHC do you use and how did you install it?
GHC 9.10.2 from haskell.nix
How is your project built (alternative: link to the project)?
This is HLS on HLS, built from the haskell.nix shell using cabal build
Which LSP client (editor/plugin) do you use?
Neovim+neovim/nvim-lspconfig
Which version of HLS do you use and how did you install it?
Latest master
Have you configured HLS in any way (especially: a hie.yaml
file)?
No, only what is in the repository
Steps to reproduce
- Build HLS with GHC 9.10.2
- Open
plugins/hls-refactor-plugin/src/Development/IDE/Plugin/Plugins/FillHole.hs
- Make a change
- Restart HLS (In nvim,
:LspRestart
Expected behaviour
HLS does not crash
Actual behaviour
HLS crashes after reporting:
"haskell-language-server: internal error: ARR_WORDS object (0x4200b1cf68) entered!\n (GHC version 9.10.2 for x86_64_unknown_linux)\n Please report this as a GHC bug: https://www.haskell.org/ghc/reportabug\n"
Debug information
Relevant startup log:
"2025-07-25T02:30:26.132827Z | Debug | Build profile: -w ghc-9.10.2 -O1\n"
"2025-07-25T02:30:26.133060Z | Debug | In order, the following will be built (use -v for more details):\n"
"2025-07-25T02:30:26.133163Z | Debug | - haskell-language-server-2.11.0.0 (interactive) (lib:hls-refactor-plugin) (first run)\n"
"2025-07-25T02:30:26.253080Z | Debug | Preprocessing library 'hls-refactor-plugin' for haskell-language-server-2.11.0.0...\n"
"2025-07-25T02:30:26.339931Z | Debug | cabal path --output-format=json\n"
"2025-07-25T02:30:26.382759Z | Debug | /nix/store/dlmzrn4s0kxwkicsg2b2wxyzx2qxsfp7-ghc-shell-for-packages-ghc-9.10.2-env/bin/ghc --print-libdir\n"
"2025-07-25T02:30:26.421502Z | Debug | cabal path --output-format=json\n"
"2025-07-25T02:30:26.461501Z | Debug | /nix/store/dlmzrn4s0kxwkicsg2b2wxyzx2qxsfp7-ghc-shell-for-packages-ghc-9.10.2-env/bin/ghc --numeric-version\n"
'2025-07-25T02:30:26.461852Z | Debug | Session loading result: Right (ComponentOptions {componentOptions = ["-fbuilding-cabal-package","-O0","-outputdir","/home/sgillespie/.cache/hie-bios/dist-haskell-language-server-ccd5fdede35faf3d569dc3d8e551e25c/build/x86_64-linux/ghc-9.10.2/haskell-language-server-2.11.0.0/l/hls-refactor-plugin/build/hls-refactor-plugin","-odir","/home/sgillespie/.cache/hie-bios/dist-haskell-language-server-ccd5fdede35faf3d569dc3d8e551e25c/build/x86_64-linux/ghc-9.10.2/haskell-language-server-2.11.0.0/l/hls-refactor-plugin/build/hls-refactor-plugin","-hidir","/home/sgillespie/.cache/hie-bios/dist-haskell-language-server-ccd5fdede35faf3d569dc3d8e551e25c/build/x86_64-linux/ghc-9.10.2/haskell-language-server-2.11.0.0/l/hls-refactor-plugin/build/hls-refactor-plugin","-hiedir","/home/sgillespie/.cache/hie-bios/dist-haskell-language-server-ccd5fdede35faf3d569dc3d8e551e25c/build/x86_64-linux/ghc-9.10.2/haskell-language-server-2.11.0.0/l/hls-refactor-plugin/build/hls-refactor-plugin/extra-compilation-artifacts/hie","-stubdir","/home/sgillespie/.cache/hie-bios/dist-haskell-language-server-ccd5fdede35faf3d569dc3d8e551e25c/build/x86_64-linux/ghc-9.10.2/haskell-language-server-2.11.0.0/l/hls-refactor-plugin/build/hls-refactor-plugin","-i","-iplugins/hls-refactor-plugin/src","-i/home/sgillespie/.cache/hie-bios/dist-haskell-language-server-ccd5fdede35faf3d569dc3d8e551e25c/build/x86_64-linux/ghc-9.10.2/haskell-language-server-2.11.0.0/l/hls-refactor-plugin/build/hls-refactor-plugin","-i/home/sgillespie/.cache/hie-bios/dist-haskell-language-server-ccd5fdede35faf3d569dc3d8e551e25c/build/x86_64-linux/ghc-9.10.2/haskell-language-server-2.11.0.0/l/hls-refactor-plugin/build/hls-refactor-plugin/autogen","-i/home/sgillespie/.cache/hie-bios/dist-haskell-language-server-ccd5fdede35faf3d569dc3d8e551e25c/build/x86_64-linux/ghc-9.10.2/haskell-language-server-2.11.0.0/l/hls-refactor-plugin/build/global-autogen","-I/home/sgillespie/.cache/hie-bios/dist-haskell-language-server-ccd5fdede35faf3d569dc3d8e551e25c/build/x86_64-linux/ghc-9.10.2/haskell-language-server-2.11.0.0/l/hls-refactor-plugin/build/hls-refactor-plugin/autogen","-I/home/sgillespie/.cache/hie-bios/dist-haskell-language-server-ccd5fdede35faf3d569dc3d8e551e25c/build/x86_64-linux/ghc-9.10.2/haskell-language-server-2.11.0.0/l/hls-refactor-plugin/build/global-autogen","-I/home/sgillespie/.cache/hie-bios/dist-haskell-language-server-ccd5fdede35faf3d569dc3d8e551e25c/build/x86_64-linux/ghc-9.10.2/haskell-language-server-2.11.0.0/l/hls-refactor-plugin/build/hls-refactor-plugin","-optP-include","-optP/home/sgillespie/.cache/hie-bios/dist-haskell-language-server-ccd5fdede35faf3d569dc3d8e551e25c/build/x86_64-linux/ghc-9.10.2/haskell-language-server-2.11.0.0/l/hls-refactor-plugin/build/hls-refactor-plugin/autogen/cabal_macros.h","-this-unit-id","haskell-language-server-2.11.0.0-inplace-hls-refactor-plugin","-hide-all-packages","-Wmissing-home-modules","-no-user-package-db","-package-db","/home/sgillespie/.local/state/cabal/store/ghc-9.10.2-inplace/package.db","-package-db","/home/sgillespie/.cache/hie-bios/dist-haskell-language-server-ccd5fdede35faf3d569dc3d8e551e25c/packagedb/ghc-9.10.2","-package-db","/home/sgillespie/.cache/hie-bios/dist-haskell-language-server-ccd5fdede35faf3d569dc3d8e551e25c/build/x86_64-linux/ghc-9.10.2/haskell-language-server-2.11.0.0/l/hls-refactor-plugin/package.conf.inplace","-package-id","base-4.20.1.0-inplace","-package-id","bytestring-0.12.2.0-inplace","-package-id","containers-0.7-inplace","-package-id","deepseq-1.5.0.0-inplace","-package-id","dlist-1.0-BRkFyhrnf2gAqPbPv0DKDH","-package-id","extra-1.8-4UthXfafDiI53yWjggQ2Np","-package-id","ghc-9.10.2-inplace","-package-id","ghc-boot-9.10.2-inplace","-package-id","ghc-exactprint-1.10.0.0-B98f8GGIpVcIgpM3f8jL3B","-package-id","ghcide-2.11.0.0-inplace","-package-id","hls-graph-2.11.0.0-inplace","-package-id","hls-plugin-api-2.11.0.0-inplace","-package-id","lens-5.3.4-BRQ5B6odwd1KHg2I2i8Lka","-package-id","lsp-2.7.0.1-5Dk24pKjnRhHKOSlIc31iN","-package-id","mtl-2.3.1-inplace","-package-id","parser-combinators-1.3.0-AZPQifD2u9XAGjjtwsklEW","-package-id","regex-applicative-0.3.4-LpFYAP5LAB06rIBZEWjhyo","-package-id","regex-tdfa-1.3.2.4-I9cUetuLSCWCf7Kjon2wDb","-package-id","syb-0.7.2.4-8QhDaSTJ74qKpmP6apH5VS","-package-id","text-2.1.2-inplace","-package-id","text-rope-0.3-Fq1JVsU5Fos8TdLQZDN0vX","-package-id","time-1.12.2-inplace","-package-id","transformers-0.6.1.1-inplace","-package-id","unordered-containers-0.2.20-4FBlVESvUyCKzqDeEuCeFl","-XGHC2021","-XExplicitNamespaces","-XCPP","-XDataKinds","-XDerivingStrategies","-XDerivingVia","-XDuplicateRecordFields","-XFunctionalDependencies","-XLambdaCase","-XOverloadedStrings","-XPatternSynonyms","-XRecordWildCards","-XViewPatterns","Development.IDE.GHC.ExactPrint","Development.IDE.GHC.Compat.ExactPrint","Development.IDE.Plugin.CodeAction","Development.IDE.Plugin.CodeAction.Util","Development.IDE.GHC.Dump","Development.IDE.Plugin.CodeAction.Args","Development.IDE.Plugin.CodeAction.ExactPrint","Development.IDE.Plugin.CodeAction.PositionIndexed","Development.IDE.Plugin.Plugins.AddArgument","Development.IDE.Plugin.Plugins.Diagnostic","Development.IDE.Plugin.Plugins.FillHole","Development.IDE.Plugin.Plugins.FillTypeWildcard","Development.IDE.Plugin.Plugins.ImportUtils","-Wall","-Wredundant-constraints","-Wunused-packages","-Wno-name-shadowing","-Wno-unticked-promoted-constructors","-hide-all-packages","-haddock"], componentRoot = "/home/sgillespie/dev/haskell/haskell-language-server", componentDependencies = ["haskell-language-server.cabal","cabal.project","cabal.project.local"]},"/nix/store/dlmzrn4s0kxwkicsg2b2wxyzx2qxsfp7-ghc-shell-for-packages-ghc-9.10.2-env/lib/ghc-9.10.2/lib","9.10.2")\n'
"2025-07-25T02:30:26.487726Z | Info | Interface files cache directory: /home/sgillespie/.cache/ghcide/haskell-language-server-2.11.0.0-inplace-hls-refactor-plugin-4dbc86b93197ef38c1d11456a650378024d3c59e\n"
"2025-07-25T02:30:26.504013Z | Info | Making new HscEnv. In-place unit ids: [ haskell-language-server-2.11.0.0-inplace-hls-refactor-plugin ]\n"
'2025-07-25T02:30:26.549397Z | Debug | New component cache HscEnvEq: (([],Just HscEnvEq 7),fromList [("cabal.project",Just 2025-07-21 13:41:38.777631389 UTC),("cabal.project.local",Nothing),("haskell-language-server.cabal",Just 2025-07-11 02:51:25.861141305 UTC)])\n'
"2025-07-25T02:30:26.582610Z | Debug | Finished build session\nAsyncCancelled\nHasCallStack backtrace:\n collectBacktraces, called at libraries/ghc-internal/src/GHC/Internal/Exception.hs:169:13 in ghc-internal:GHC.Internal.Exception\n toExceptionWithBacktrace, called at libraries/ghc-internal/src/GHC/Internal/IO.hs:260:11 in ghc-internal:GHC.Internal.IO\n throwIO, called at libraries/ghc-internal/src/GHC/Internal/Control/Exception/Base.hs:195:43 in ghc-internal:GHC.Internal.Control.Exception.Base\n\n\n"
"2025-07-25T02:30:26.589497Z | Debug | Known files updated:\n"
' fromList [(TargetModule (ModuleName "Development.IDE.Plugin.CodeAction.PositionIndexed"),fromList ["/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/CodeAction/PositionIndexed.hs"]),(TargetModule (ModuleName "Development.IDE.GHC.ExactPrint"),fromList ["/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/GHC/ExactPrint.hs"]),(TargetModule (ModuleName "Development.IDE.GHC.Compat.ExactPrint"),fromList ["/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/GHC/Compat/ExactPrint.hs"]),(TargetModule (ModuleName "Development.IDE.GHC.Dump"),fromList ["/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/GHC/Dump.hs"]),(TargetModule (ModuleName "Development.IDE.Plugin.Plugins.FillHole"),fromList ["/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/Plugins/FillHole.hs"]),(TargetModule (ModuleName "Development.IDE.Plugin.CodeAction"),fromList ["/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/CodeAction.hs"]),(TargetFile NormalizedFilePath "/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/Plugins/FillHole.hs",fromList ["/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/Plugins/FillHole.hs"]),(TargetModule (ModuleName "Development.IDE.Plugin.Plugins.Diagnostic"),fromList ["/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/Plugins/Diagnostic.hs"]),(TargetModule (ModuleName "Development.IDE.Plugin.Plugins.ImportUtils"),fromList ["/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/Plugins/ImportUtils.hs"]),(TargetModule (ModuleName "Development.IDE.Plugin.Plugins.AddArgument"),fromList ["/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/Plugins/AddArgument.hs"]),(TargetModule (ModuleName "Development.IDE.Plugin.Plugins.FillTypeWildcard"),fromList ["/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/Plugins/FillTypeWildcard.hs"]),(TargetModule (ModuleName "Development.IDE.Plugin.CodeAction.Util"),fromList ["/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/CodeAction/Util.hs"]),(TargetModule (ModuleName "Development.IDE.Plugin.CodeAction.Args"),fromList ["/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/CodeAction/Args.hs"]),(TargetModule (ModuleName "Development.IDE.Plugin.CodeAction.ExactPrint"),fromList ["/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/CodeAction/ExactPrint.hs"])]\n'
"2025-07-25T02:30:26.589994Z | Debug | Restarting build session due to new component\nAction Queue: []\nKeys: [ IsFileOfInterest; /home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/Plugins/FillHole.hs\n , GhcSessionIO; \n , GetKnownTargets; ]\nAborting previous build session took 0.00s \n"
'2025-07-25T02:30:26.590779Z | Debug | hlint: Getting hlint ideas for NormalizedFilePath "/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/Plugins/FillHole.hs"\n'
'2025-07-25T02:30:26.661533Z | Debug | hlint: Using extensions for NormalizedFilePath "/home/sgillespie/dev/haskell/haskell-language-server/plugins/hls-refactor-plugin/src/Development/IDE/Plugin/Plugins/FillHole.hs":\n [ MonomorphismRestriction\n , RelaxedPolyRec\n , ForeignFunctionInterface\n , ImplicitPrelude\n , ScopedTypeVariables\n , BangPatterns\n , OverloadedStrings\n'
" , DisambiguateRecordFields\n , RecordWildCards\n , NamedFieldPuns\n , ViewPatterns\n , GADTSyntax\n , DoAndIfThenElse\n , ConstraintKinds\n , PolyKinds\n , DataKinds\n , InstanceSigs\n , StandaloneDeriving\n , DeriveDataTypeable\n , DeriveFunctor\n , DeriveTraversable\n , DeriveFoldable\n , DeriveGeneric\n , DeriveLift\n , DerivingStrategies\n , DerivingVia\n , TypeSynonymInstances\n , FlexibleContexts\n , FlexibleInstances\n , ConstrainedClassMethods\n , MultiParamTypeClasses\n , FunctionalDependencies\n , ExistentialQuantification\n , EmptyDataDecls\n , KindSignatures\n"
" , GeneralizedNewtypeDeriving\n , PostfixOperators\n , TupleSections\n , PatternGuards\n , RankNTypes\n , TypeOperators\n , ExplicitNamespaces\n , ExplicitForAll\n , TraditionalRecordSyntax\n , LambdaCase\n , BinaryLiterals\n , HexFloatLiterals\n , DuplicateRecordFields\n , EmptyCase\n , PatternSynonyms\n"
" , NamedWildCards\n , TypeApplications\n , EmptyDataDeriving\n , NumericUnderscores\n , StarIsType\n , ImportQualifiedPost\n , StandaloneKindSignatures\n , FieldSelectors\n , ListTuplePuns ]\n"
"haskell-language-server: internal error: ARR_WORDS object (0x4200b1d080) entered!\n (GHC version 9.10.2 for x86_64_unknown_linux)\n Please report this as a GHC bug: https://www.haskell.org/ghc/reportabug\n"
EDIT: I can reproduce with ghc9102
from nixpkgs, which would seem to rule out a problem from haskell.nix:
"haskell-language-server: internal error: ARR_WORDS object (0x42010071e8) entered!\nStack trace:\n"
"haskell-language-server: Failed to get stack frames of current process: No DWARF information found: Success\n 0x7fde16584570 set_initial_registers (/nix/store/ki6b1isnf9fy9qldhcv5ad0gyh5rch44-ghc-9.10.2/lib/ghc-9.10.2/lib/x86_64-linux-ghc-9.10.2/libHSrts-1.0.2_thr-ghc9.10.2.so)\n"
" 0x7fde15fbe660 dwfl_thread_getframes (/nix/store/qwmm6h7n1qk2xad64i4ncr9is17gfcf4-elfutils-0.193/lib/libdw-0.193.so)\n"
" 0x7fde15fbe07b get_one_thread_cb (/nix/store/qwmm6h7n1qk2xad64i4ncr9is17gfcf4-elfutils-0.193/lib/libdw-0.193.so)\n 0x7fde15fbe464 dwfl_getthreads (/nix/store/qwmm6h7n1qk2xad64i4ncr9is17gfcf4-elfutils-0.193/lib/libdw-0.193.so)\n"
" 0x7fde15fbe9d2 dwfl_getthread_frames (/nix/store/qwmm6h7n1qk2xad64i4ncr9is17gfcf4-elfutils-0.193/lib/libdw-0.193.so)\n"
" 0x7fde16584cb7 libdwGetBacktrace (/nix/store/ki6b1isnf9fy9qldhcv5ad0gyh5rch44-ghc-9.10.2/lib/ghc-9.10.2/lib/x86_64-linux-ghc-9.10.2/libHSrts-1.0.2_thr-ghc9.10.2.so)\n"
" 0x7fde1658e137 rtsFatalInternalErrorFn (/nix/store/ki6b1isnf9fy9qldhcv5ad0gyh5rch44-ghc-9.10.2/lib/ghc-9.10.2/lib/x86_64-linux-ghc-9.10.2/libHSrts-1.0.2_thr-ghc9.10.2.so)\n"
" 0x7fde1658e38f barf (/nix/store/ki6b1isnf9fy9qldhcv5ad0gyh5rch44-ghc-9.10.2/lib/ghc-9.10.2/lib/x86_64-linux-ghc-9.10.2/libHSrts-1.0.2_thr-ghc9.10.2.so)\n"
" 0x7fde165ce513 stg_ARR_WORDS_info (/nix/store/ki6b1isnf9fy9qldhcv5ad0gyh5rch44-ghc-9.10.2/lib/ghc-9.10.2/lib/x86_64-linux-ghc-9.10.2/libHSrts-1.0.2_thr-ghc9.10.2.so)\n"
"(GHC version 9.10.2 for x86_64_unknown_linux)\n Please report this as a GHC bug: https://www.haskell.org/ghc/reportabug\n"
Furthermore, I cannot reproduce this with ghc-9.10.1 (from either nixpkgs or haskell.nix)