Skip to content
  • Sylvain Henry's avatar
    Refactor Logger · 8e2f85f6
    Sylvain Henry authored and Marge Bot's avatar Marge Bot committed
    Before this patch, the only way to override GHC's default logging
    behavior was to set `log_action`, `dump_action` and `trace_action`
    fields in DynFlags. This patch introduces a new Logger abstraction and
    stores it in HscEnv instead.
    
    This is part of #17957 (avoid storing state in DynFlags). DynFlags are
    duplicated and updated per-module (because of OPTIONS_GHC pragma), so
    we shouldn't store global state in them.
    
    This patch also fixes a race in parallel "--make" mode which updated
    the `generatedDumps` IORef concurrently.
    
    Bump haddock submodule
    
    The increase in MultilayerModules is tracked in #19293.
    
    Metric Increase:
        MultiLayerModules
    8e2f85f6