Skip to content
  • Simon Marlow's avatar
    Add -fkeep-cafs · df67f95b
    Simon Marlow authored and Krzysztof Gogolewski's avatar Krzysztof Gogolewski committed
    Summary:
    I noticed while playing around with
    https://github.com/fbsamples/ghc-hotswap/ that the main binary needs to
    have a custom main function to set `config.keep_cafs = true` when
    initialising the runtime. This is pretty annoying, it means an extra
    C file with some cryptic incantations in it, and a `-no-hs-main` flag.
    
    So I've replaced this with a link-time flag to GHC, `-fkeep-cafs` that
    does the same thing.
    
    Test Plan:
    New unit test that tests for the RTS's GC'd CAFs assertion, and also
    the -keep-cafs flag.
    
    Reviewers: bgamari, osa1, erikd, noamz
    
    Reviewed By: osa1
    
    Subscribers: rwbarton, carter
    
    Differential Revision: https://phabricator.haskell.org/D5183
    df67f95b