
#14777: panic when using a function defined in terms of `error` -------------------------------------+------------------------------------- Reporter: zilinc | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.2.2 Resolution: | Keywords: Operating System: Linux | Architecture: Type of failure: Compile-time | Unknown/Multiple crash or panic | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by zilinc): Thank you providing the steps. If you could apply the following change to the code, you might be able to reproduce the panic. {{{ diff --git a/cogent/src/Cogent/Desugar.hs b/cogent/src/Cogent/Desugar.hs index bdea312..6a6f308 100644 --- a/cogent/src/Cogent/Desugar.hs +++ b/cogent/src/Cogent/Desugar.hs @@ -479,7 +479,7 @@ desugarExpr (B.TE t@(S.RT (S.TVariant ts)) (S.Con c es) l) = do desugarExpr (B.TE _ (S.Seq e1 e2) _) = do v <- freshVar E <$> (Let v <$> desugarExpr e1 <*> withBinding v (desugarExpr e2)) -desugarExpr (B.TE _ (S.Lam p mt e) _) = undefined +desugarExpr (B.TE _ (S.Lam p mt e) _) = __impossible "xx" desugarExpr (B.TE _ (S.App e1 e2) _) = E <$> (App <$> desugarExpr e1 <*> desugarExpr e2) desugarExpr (B.TE _ (S.If c [] th el) _) = E <$> (If <$> desugarExpr c <*> desugarExpr th <*> desugarExpr el) desugarExpr (B.TE _ (S.If c vs th el) _) = do }}} Replying to [comment:5 mpickering]:
I can't reproduce this. Please can you provide exact reproduction instructions?
Steps I took:
{{{ git clone https://github.com/NICTA/cogent.git cd cogent/cogent git reset --hard 92c40530cbcbac77469865e096dab3228a2fb92f git clone https://gist.github.com/e6fc9e8a254d795bbd8ec476ca9fc115.git nix-scripts cp nix-scripts/* . nix-shell cabal configure cabal build }}}
Then the build completes successfully.
Here are the nix files. https://gist.github.com/e6fc9e8a254d795bbd8ec476ca9fc115
-- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14777#comment:6 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler