
#14092: hs-boot unfolding visibility not consistent between --make and -c -------------------------------------+------------------------------------- Reporter: ezyang | Owner: (none) Type: bug | Status: new Priority: low | Milestone: Component: Compiler | Version: 8.2.1 Resolution: | Keywords: hs-boot Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by ezyang): * priority: normal => low Comment:
However, the current --make behaviour produces code that is at least as good(modulo the bug exhibited above), and in your first (A.hs-boot, B.hs, A.hs, C.hs) example, it is better! I wonder if it is possible to exploit laziness to always have unfoldings available even when importing an .hs- boot.
Yes. But the price you pay is that the compilation of A and B can no longer be done in parallel. I tend to think of an hs-boot files as one way you could speed up compilation, a bit like header files, at the cost of the quality of optimized code.
It's the simplifier that is doing more inlining than it should, isn't it? (Not the typechecker.)
Yes!
And how much does all this matter anyway?
Not much, probably! -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14092#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler