#15426: `elemIndex` and `findIndex` still can't fuse -------------------------------------+------------------------------------- Reporter: kabuhr | Owner: kabuhr Type: bug | Status: patch Priority: normal | Milestone: 8.8.1 Component: libraries/base | Version: 8.4.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: | testsuite/tests/perf/should_run/T15426.hs Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | https://phabricator.haskell.org/D5063 -------------------------------------+------------------------------------- Comment (by Ben Gamari <ben@…>): In [changeset:"14817621aae2d45f8272a36b171b9ccce8763bba/ghc" 1481762/ghc]: {{{ #!CommitTicketReference repository="ghc" revision="14817621aae2d45f8272a36b171b9ccce8763bba" base: Mark `findIndices` as INLINABLE instead of INLINE (fixes #15426) If `findIndices` is marked INLINE in `Data.OldList`, then the unfolded versions of `elemIndex` and `findIndex` included in the interface file are unfusible (even though `findIndices` itself remains fusible). By marking it INLINABLE instead, elemIndex` and `findIndex` will fuse properly. Test Plan: make TEST=T15426 Reviewers: hvr, bgamari Reviewed By: bgamari Subscribers: rwbarton, carter GHC Trac Issues: #15426 Differential Revision: https://phabricator.haskell.org/D5063 }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15426#comment:11> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler