
#8668: SPECIALIZE silently fails to apply -------------------------------------+---------------------------------- Reporter: crockeea | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.6.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: x86_64 (amd64) Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+---------------------------------- Comment (by crockeea): Replying to [comment:15 carter]:
could you walk me through why {{{ {-# SPECIALIZE plusFastCyc :: (FastCyc (VT U.Vector m) Int) -> (FastCyc (VT U.Vector m) Int) -> (FastCyc (VT U.Vector m) Int) #-} }}} isn't satisfactory?
I added some more code to demonstrate something more like a real use case for the program: http://lpaste.net/98840. It has the same issue as `Foo.hs` above, but hopefully you can see why the constraint is needed. I wanted to remove it from the example to show that the problem wasn't type families, constraint kinds, etc. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8668#comment:17 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler