
#15128: emitPrimOp: can't translate PrimOp -------------------------------------+------------------------------------- Reporter: tianxiaogu | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: 8.6.1 Component: Compiler | Version: 8.5 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by osa1): Core Lint already catches this: {{{ From: State# s_a143 To: ByteArray# *** Core Lint warnings : in result of Simplifier *** <no location info>: warning: In the expression: byteArrayContents# (s#_a13D `cast` (UnsafeCo representational (State# s_a143) ByteArray# :: (State# s_a143 :: TYPE ('TupleRep '[])) ~R# (ByteArray# :: TYPE 'UnliftedRep))) Unsafe coercion: between values with different # of reps From: State# s_a143 To: ByteArray# *** Core Lint warnings : in result of Simplifier *** <no location info>: warning: In the expression: byteArrayContents# (eta_B1 `cast` (UnsafeCo representational (State# s_a143) ByteArray# :: (State# s_a143 :: TYPE ('TupleRep '[])) ~R# (ByteArray# :: TYPE 'UnliftedRep))) Unsafe coercion: between values with different # of reps From: State# s_a143 To: ByteArray# *** Core Lint warnings : in result of Simplifier *** <no location info>: warning: In the expression: byteArrayContents# (eta_B1 `cast` (UnsafeCo representational (State# s_a143) ByteArray# :: (State# s_a143 :: TYPE ('TupleRep '[])) ~R# (ByteArray# :: TYPE 'UnliftedRep))) Unsafe coercion: between values with different # of reps From: State# s_a143 To: ByteArray# *** Core Lint warnings : in result of Tidy Core *** <no location info>: warning: In the expression: byteArrayContents# (eta_B1 `cast` (UnsafeCo representational (State# s_a143) ByteArray# :: (State# s_a143 :: TYPE ('TupleRep '[])) ~R# (ByteArray# :: TYPE 'UnliftedRep))) Unsafe coercion: between values with different # of reps From: State# s_a143 To: ByteArray# *** Core Lint warnings : in result of CorePrep *** <no location info>: warning: In the expression: byteArrayContents# (eta_s1gf `cast` (UnsafeCo representational (State# s_a143) ByteArray# :: (State# s_a143 :: TYPE ('TupleRep '[])) ~R# (ByteArray# :: TYPE 'UnliftedRep))) Unsafe coercion: between values with different # of reps From: State# s_a143 To: ByteArray# ghc: panic! (the 'impossible' happened) (GHC version 8.4.2 for x86_64-unknown-linux): emitPrimOp: can't translate PrimOp byteArrayContents# Call stack: CallStack (from HasCallStack): callStackDoc, called at compiler/utils/Outputable.hs:1150:37 in ghc:Outputable pprPanic, called at compiler/codeGen/StgCmmPrim.hs:882:12 in ghc:StgCmmPrim Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug }}} So perhaps we can close this ticket. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15128#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler