diff --git a/skeleton/cabal.project b/skeleton/cabal.project index b32cb6de2..936c3dc90 100644 --- a/skeleton/cabal.project +++ b/skeleton/cabal.project @@ -24,8 +24,8 @@ if !(arch(javascript) || arch(wasm32)) --optional-packages: -- deps/jenga/deps/reflex-dom/* --- multi-repl: True --- Disabled: GHC 9.14 multi-unit GHCi panics with "LinkInMemory". +multi-repl: True +-- Re-enabled to investigate the LinkInMemory panic prior turns noted. diff --git a/skeleton/frontend/js/frontend-js.cabal b/skeleton/frontend/js/frontend-js.cabal index 162cdcd7d..17b96dee2 100644 --- a/skeleton/frontend/js/frontend-js.cabal +++ b/skeleton/frontend/js/frontend-js.cabal @@ -49,12 +49,18 @@ custom-setup jenga-setup library + hs-source-dirs: src build-depends: base -- , frontend reexported-modules: Frontend + -- Placeholder module: workaround for GHC #25366 / #26073. + -- cabal repl --enable-multi-repl panics ("LinkInMemory") on units + -- with no exposed-modules of their own. + exposed-modules: FrontendJs.Placeholder + default-language: Haskell2010 if (arch(javascript) || arch(wasm32)) diff --git a/skeleton/frontend/js/src/FrontendJs/Placeholder.hs b/skeleton/frontend/js/src/FrontendJs/Placeholder.hs new file mode 100644 index 000000000..84442d092 --- /dev/null +++ b/skeleton/frontend/js/src/FrontendJs/Placeholder.hs @@ -0,0 +1 @@ +module FrontendJs.Placeholder where diff --git a/skeleton/frontend/wasm/frontend-wasm.cabal b/skeleton/frontend/wasm/frontend-wasm.cabal index 46879b19c..526523e69 100644 --- a/skeleton/frontend/wasm/frontend-wasm.cabal +++ b/skeleton/frontend/wasm/frontend-wasm.cabal @@ -49,12 +49,20 @@ custom-setup jenga-setup library + hs-source-dirs: src build-depends: base -- , frontend reexported-modules: Frontend + -- Placeholder module: workaround for GHC #25366 / #26073. + -- cabal repl --enable-multi-repl panics ("LinkInMemory") on units + -- with no exposed-modules of their own. See: + -- https://gitlab.haskell.org/ghc/ghc/-/issues/25366 + -- https://gitlab.haskell.org/ghc/ghc/-/issues/26073 + exposed-modules: FrontendWasm.Placeholder + default-language: Haskell2010 if (arch(javascript) || arch(wasm32)) diff --git a/skeleton/frontend/wasm/src/FrontendWasm/Placeholder.hs b/skeleton/frontend/wasm/src/FrontendWasm/Placeholder.hs new file mode 100644 index 000000000..b3f1ed9fc --- /dev/null +++ b/skeleton/frontend/wasm/src/FrontendWasm/Placeholder.hs @@ -0,0 +1 @@ +module FrontendWasm.Placeholder where