Skip to content
  • John Ericson's avatar
    Break up `Settings` into smaller structs · ace2e335
    John Ericson authored and Marge Bot's avatar Marge Bot committed
    As far as I can tell, the fields within `Settings` aren't *intrinsicly*
    related. They just happen to be initialized the same way (in particular
    prior to the rest of `DynFlags`), and that is why they are grouped
    together.
    
    Within `Settings`, however, there are groups of settings that clearly do
    share something in common, regardless of how they anything is
    initialized.
    
    In the spirit of GHC being a library, where the end cosumer may choose
    to initialize this configuration in arbitrary ways, I made some new data
    types for thoses groups internal to `Settings`, and used them to define
    `Settings` instead. Hopefully this is a baby step towards a general
    decoupling of the stateful and stateless parts of GHC.
    ace2e335