[GHC] #7931: Deriving Read of an empty datatype crashes

#7931: Deriving Read of an empty datatype crashes -----------------------------+---------------------------------------------- Reporter: monoidal | Owner: Type: bug | Status: new Priority: normal | Component: Compiler Version: 7.6.3 | Keywords: Os: Unknown/Multiple | Architecture: Unknown/Multiple Failure: None/Unknown | Blockedby: Blocking: | Related: -----------------------------+---------------------------------------------- Standalone deriving Read of an empty datatype crashes: {{{ {-# LANGUAGE StandaloneDeriving #-} data A deriving instance Read A }}} {{{ ghc: panic! (the 'impossible' happened) (GHC version 7.7.20130515 for x86_64-unknown-linux): Prelude.foldr1: empty list Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug }}} (Oddly, the "panic" message is given only by ghc, not ghci, but this is minor.) While the Read instance seems to be of little use, it can be used for reading types such as `Either Void Int`. Patch attached. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7931 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#7931: Deriving Read of an empty datatype crashes -----------------------------+---------------------------------------------- Reporter: monoidal | Owner: Type: bug | Status: patch Priority: normal | Component: Compiler Version: 7.6.3 | Keywords: Os: Unknown/Multiple | Architecture: Unknown/Multiple Failure: None/Unknown | Blockedby: Blocking: | Related: -----------------------------+---------------------------------------------- Changes (by monoidal): * status: new => patch -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7931#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#7931: Deriving Read of an empty datatype crashes -----------------------------+---------------------------------------------- Reporter: monoidal | Owner: Type: bug | Status: patch Priority: normal | Component: Compiler Version: 7.6.3 | Keywords: Os: Unknown/Multiple | Architecture: Unknown/Multiple Failure: None/Unknown | Blockedby: Blocking: | Related: -----------------------------+---------------------------------------------- Comment(by parcs):
(Oddly, the "panic" message is given only by ghc, not ghci, but this is minor.)
That should be fixed in HEAD -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7931#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#7931: Deriving Read of an empty datatype crashes -----------------------------+---------------------------------------------- Reporter: monoidal | Owner: Type: bug | Status: patch Priority: normal | Component: Compiler Version: 7.6.3 | Keywords: Os: Unknown/Multiple | Architecture: Unknown/Multiple Failure: None/Unknown | Blockedby: Blocking: | Related: -----------------------------+---------------------------------------------- Comment(by monoidal): @parcs: What I get is: {{{ g@g-lap:~/haskell/head$ ghc-7.7.20130515 X [1 of 1] Compiling Main ( X.hs, X.o ) ghc: panic! (the 'impossible' happened) (GHC version 7.7.20130515 for x86_64-unknown-linux): Prelude.foldr1: empty list Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug g@g-lap:~/haskell/head$ ghci-7.7.20130515 X GHCi, version 7.7.20130515: http://www.haskell.org/ghc/ :? for help Loading package ghc-prim ... linking ... done. Loading package integer-gmp ... linking ... done. Loading package base ... linking ... done. [1 of 1] Compiling Main ( X.hs, interpreted ) *** Exception: Prelude.foldr1: empty list }}} -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7931#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#7931: Deriving Read of an empty datatype crashes ----------------------------------------+----------------------------------- Reporter: monoidal | Owner: Type: bug | Status: closed Priority: normal | Milestone: Component: Compiler | Version: 7.6.3 Resolution: fixed | Keywords: Os: Unknown/Multiple | Architecture: Unknown/Multiple Failure: None/Unknown | Difficulty: Unknown Testcase: deriving/should_run/T7931 | Blockedby: Blocking: | Related: ----------------------------------------+----------------------------------- Comment(by monoidal): I left a comment at #7401. By the way: #7401 is about normal, non- standalone deriving; AFAIK standalone deriving for nullary types works fine. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7931#comment:10 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (2)
-
GHC
-
GHC