#13286: Late floating of join points -------------------------------------+------------------------------------- Reporter: simonpj | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.0.1 Resolution: | Keywords: JoinPoints 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 David Feuer <David.Feuer@…>): In [changeset:"6eb52cfc2e31df2561860f43d41766464ccfe8af/ghc" 6eb52cfc/ghc]: {{{ #!CommitTicketReference repository="ghc" revision="6eb52cfc2e31df2561860f43d41766464ccfe8af" Improve SetLevels for join points C.f. Trac #13286, #13236 * Never destroy a join point unless it goes to top level See Note [Floating join point bindings] * Never float a MFE if it has a free join variable Note [Free join points] * Stop treating nullary join points specially * Enforce the invariant that le_join_ceil >= le_ctxt_lvl (Needs more thought...) Reviewers: austin, bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D3199 }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13286#comment:3> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler