
#13006: Possible program should type check but does not using Implicit Parameters and Vectors -------------------------------------+------------------------------------- Reporter: clinton | Owner: Type: bug | Status: closed Priority: normal | Milestone: Component: Compiler | Version: 8.0.2-rc2 Resolution: invalid | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: GHC rejects | Unknown/Multiple valid program | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by simonpj): From the given `[G] ?v :: MVector (PrimState m) Int` and wanted `[G] ?v MVector (PrimState n) Int` we get the derived equality `[D] MVector (PrimState m) Int ~ MVector (PrimState n) Int`. Alas `PrimState` is a (non-injective) type family, so this does not tell us that `M ~ n`. In the simpler version, it does. Simon -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/13006#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler