• Simon Peyton Jones's avatar
    Add NOINLINE for hs-boot functions · efa7b3a4
    Simon Peyton Jones authored
    This fixes Trac #10083.
    
    The key change is in TcBinds.tcValBinds, where we construct
    the prag_fn.  With this patch we add a NOINLINE pragma for
    any functions that were exported by the hs-boot file for this
    module.
    
    See Note [Inlining and hs-boot files], and #10083, for details.
    
    The commit touches several other files becuase I also changed the
    representation of the "pragma function" from a function TcPragFun
    to an environment, TcPragEnv. This makes it easer to extend
    during construction.
    efa7b3a4
TcPat.hs 51.3 KB