Skip to content
  • Alexis King's avatar
    Mark DataCon wrappers CONLIKE · 6c9fae23
    Alexis King authored and Marge Bot's avatar Marge Bot committed
    Now that DataCon wrappers don’t inline until phase 0 (see commit
    b78cc64e), it’s important that
    case-of-known-constructor and RULE matching be able to see saturated
    applications of DataCon wrappers in unfoldings. Making them conlike is a
    natural way to do it, since they are, in fact, precisely the sort of
    thing the CONLIKE pragma exists to solve.
    
    Fixes #18012.
    
    This also bumps the version of the parsec submodule to incorporate a
    patch that avoids a metric increase on the haddock perf tests. The
    increase was not really a flaw in this patch, as parsec was implicitly
    relying on inlining heuristics. The patch to parsec just adds some
    INLINABLE pragmas, and we get a nice performance bump out of it (well
    beyond the performance we lost from this patch).
    
    Metric Decrease:
        T12234
        WWRec
        haddock.Cabal
        haddock.base
        haddock.compiler
    6c9fae23