Skip to content
Snippets Groups Projects
This project is mirrored from https://*****:*****@gitlab.haskell.org/ghc/ghc.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer or owner.
Last successful update .
  1. Jun 01, 2023
  2. Apr 14, 2023
    • Simon Peyton Jones's avatar
      Transfer DFunId_ness onto specialised bindings · 16871529
      Simon Peyton Jones authored
      Whether a binding is a DFunId or not has consequences for the `-fdicts-strict`
      flag, essentially if we are doing demand analysis for a DFunId then `-fdicts-strict` does
      not apply because the constraint solver can create recursive groups of dictionaries.
      
      In #22549 this was fixed for the "normal" case, see
      Note [Do not strictify the argument dictionaries of a dfun].
      However the loop still existed if the DFunId was being specialised.
      
      The problem was that the specialiser would specialise a DFunId and
      turn it into a VanillaId and so the demand analyser didn't know to
      apply special treatment to the binding anymore and the whole recursive
      group was optimised to bottom.
      
      The solution is to transfer over the DFunId-ness of the binding in the specialiser so
      that the demand analyser knows not to apply the `-fstrict-dicts`.
      
      Fixes #22549
      16871529
  3. Apr 13, 2023
  4. Apr 12, 2023
  5. Mar 09, 2023
  6. Mar 02, 2023
  7. Feb 23, 2023
  8. Feb 22, 2023
  9. Feb 21, 2023
Loading