[GHC] #9102: Assertion failure in CoreUtils.lhs
#9102: Assertion failure in CoreUtils.lhs ------------------------------------+------------------------------------- Reporter: tmcdonell | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.8.2 Keywords: | Operating System: Unknown/Multiple Architecture: Unknown/Multiple | Type of failure: None/Unknown Difficulty: Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | ------------------------------------+------------------------------------- I happened to be using a debug build of ghc-7.8.2, and got this assertion failure compiling [http://hackage.haskell.org/package/fclabels-2.0.1 fclabels]. {{{ [ 7 of 10] Compiling Data.Label.Total ( src/Data/Label/Total.hs, dist/build/Data/Label/Total.o ) <no location info>: ghc: panic! (the 'impossible' happened) (GHC version 7.8.2.20140429 for x86_64-unknown-linux): ASSERT failed! file compiler/coreSyn/CoreUtils.lhs line 194 coercion Nth:0 dt{v d7gF} [lid] passed to mkCast base:Control.Category.id{v rkl} [gid[ClassOp]] @ ghc- prim:GHC.Prim.*{(w) tc 34d} @ fclabels-2.0.1:Data.Label.Point.Total{tc r1Pm} (base:Control.Arrow.$p1Arrow{v r1s} [gid[ClassOp]] @ fclabels-2.0.1:Data.Label.Point.Total{tc r1Pm} (base:Control.Arrow.$p1ArrowApply{v rp} [gid[ClassOp]] @ fclabels-2.0.1:Data.Label.Point.Total{tc r1Pm} $dArrowApply{v a72o} [lid])) @ f{tv a8m6} [tv] f{v a8hw} [lid] has wrong role nominal }}} Problem does not appear with `-O0`. I couldn't test with HEAD because fclabels isn't compatible with the changes to Template Haskell yet. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9102> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#9102: Assertion failure in CoreUtils.lhs -------------------------------------+------------------------------------ Reporter: tmcdonell | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.8.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Comment (by tmcdonell): Sorry, forgot to mention: {{{ $ ghc --version The Glorious Glasgow Haskell Compilation System, version 7.8.2.20140429 }}} Test system is Ubuntu 12.04, x86_64. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9102#comment:1> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#9102: Assertion failure in CoreUtils.lhs -------------------------------------+------------------------------------ Reporter: tmcdonell | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.8.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Comment (by Simon Peyton Jones <simonpj@…>): In [changeset:"4cfc1fae11ec9a5c4b34ac747f0ce50f52423eba/ghc"]: {{{ #!CommitTicketReference repository="ghc" revision="4cfc1fae11ec9a5c4b34ac747f0ce50f52423eba" Lint should check that TyConAppCo doesn't have a synonym in the tycon position That is why Lint didn't nail Trac #9102 }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9102#comment:2> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#9102: Assertion failure in CoreUtils.lhs -------------------------------------+------------------------------------ Reporter: tmcdonell | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.8.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Comment (by simonpj): This is the actual fix for #9102: {{{ commit 21f17d06aa5c33e639f1b0d37b4bf888b494c441 Author: Simon Peyton Jones <simonpj@microsoft.com> Date: Tue May 13 13:17:19 2014 +0100 Fix invariant in mkAppCoFlexible mkAppCoFlexible was breaking the invariant that the head of a TyConAppCo cannot be a type synonym. This small patch fixes it. compiler/types/Coercion.lhs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) }}} I forgot to mention the ticket in the commit message. Simon -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9102#comment:3> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#9102: Assertion failure in CoreUtils.lhs -------------------------------------+------------------------------------ Reporter: tmcdonell | Owner: Type: bug | Status: merge Priority: normal | Milestone: Component: Compiler | Version: 7.8.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Changes (by simonpj): * status: new => merge Comment: Merge to 7.8.2. I didn't get to a small test case, so no regression test for now. Simon -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9102#comment:4> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#9102: Assertion failure in CoreUtils.lhs -------------------------------------+------------------------------------ Reporter: tmcdonell | Owner: Type: bug | Status: merge Priority: normal | Milestone: Component: Compiler | Version: 7.8.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Comment (by Simon Peyton Jones <simonpj@…>): In [changeset:"022f8750edf6f413fba31293435dcc62600eab77/ghc"]: {{{ #!CommitTicketReference repository="ghc" revision="022f8750edf6f413fba31293435dcc62600eab77" Refactoring around TyCon.isSynTyCon * Document isSynTyCon better * Add isTypeSyonymTyCon for regular H98 type synonyms * Use isTypeSynonymTyCon rather than isSynTyCon where the former is really intended All arose as part of a bug I introduced when fixing Trac #9102, thinking that isSynTyCon meant H98 type syononyms. }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9102#comment:5> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#9102: Assertion failure in CoreUtils.lhs -------------------------------------+------------------------------------ Reporter: tmcdonell | Owner: Type: bug | Status: closed Priority: normal | Milestone: 7.8.3 Component: Compiler | Version: 7.8.2 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Changes (by thoughtpolice): * status: merge => closed * resolution: => fixed -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9102#comment:7> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
participants (1)
-
GHC