
#8774: Transitivity of Auto-Specialization -------------------------------------+------------------------------------- Reporter: crockeea | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.6.3 Resolution: | Keywords: Inlining Operating System: Linux | Architecture: Type of failure: Compile-time | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: #5928, #8668, | Differential Rev(s): #8099 | Wiki Page: | -------------------------------------+------------------------------------- Comment (by bgamari): @erikd, plop the `Foo` and `Main` modules given in the ticket description in appropriately named files and compile `Main` with `ghc -ddump-simpl -dsuppress-idinfo -O`. You should see no `Foo a`s in the simplified core; instead you should see a nicely specialized definition of `plus` with all `Foo`s should be instantiated at `Int`. There should be no calls to the polymorphic `Foo.plus`. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8774#comment:8 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler