1. 15 Jun, 2020 6 commits
    • Alan Zimmerman's avatar
      Working on check-exact. Making progress · 7255501a
      Alan Zimmerman authored
      Working on the ghc-exact bit
      7255501a
    • Alan Zimmerman's avatar
      0138c4b4
    • Alan Zimmerman's avatar
      Proof of Concept implementation of in-tree API Annotations · b363bbe0
      Alan Zimmerman authored
      This MR introduces a possible machinery to introduce API Annotations
      into the TTG extension points.
      
      It is intended to be a concrete example for discussion.
      
      It still needs to process comments.
      
      ----
      
      Work in progress, adding more TTG extensions for annotations.
      
      And fixing ppr round-trip tests by being able to blank out in-tree
      annotations, as done with SrcSpans.
      
      This is needed for the case of
      
        class Foo a where
      
      for which current ppr does not print the "where".
      
      Rename AA to AddApiAnn and AA to AddAnn
      
      Add XConPatIn and XConPatOut
      
      Rebase
      
      ----
      
      First pass at bringing in LocatedA for API anns in locations
      
      Treatment of ECP in parsing is provisional at this stage, leads to some
      horribly stuff in Parser.y and RdrHsSyn.
      
      It is an extensive but not invasive change. I think (AZ).
      
      Locally it reports some parsing tests using less memory.
      
      Add ApiAnns to the HsExpr data structure.
      
      rebase.
      
      Change HsMatchContext and HsStmtContext to use an id, not a GhcPass
      parameter.
      
      Add ApiAnns to Hs/Types
      
      Rebase
      
      Rebased 2020-03-25
      
      WIP on in-tree annotations
      
      Includes updating HsModule
      
      Imports
      
      LocateA ImportDecl so we can hang AnnSemi off it
      
      A whole bunch of stuff more
      
      InjectivityAnn and FamEqn now have annotations in them
      
      Add annotations to context srcspan
      
      ----
      
      In-tree annotations: LHsDecl and LHsBind LocatedA
      
      ----
      
      WIP on in-tree annotations
      
      ----
      
      in-tree annotations: LHsType is now LocatedA
      
      ----
      
      FunDeps is now also a HS data type
      
      ----
      
      WIP.  Added LocatedA to Pat, Expr, Decl
      
      And worked some more through Parser.y
      
      ----
      
      LStmt now Located
      
      ----
      
      Finished working through Parser.y, tests seem ok
      
      failures relate to annotations.
      
      Adding test infrastructure for check-exact
      
      Like check-ppr, but checking for an exact reproduction of the parsed
      source file.
      
      Starting to work on actual exact printer
      
      Bring in ApiAnnName
      
      As an alternative for LocatedA, to be used for names only.
      
      Carrying extra name adornments, such as locations of backticks,
      parens, etc.
      
      Working on changing ApiAnnName to accurately reflect actual usage
      b363bbe0
    • Vladislav Zavialov's avatar
      User's Guide: KnownNat evidence is Natural · cf01477f
      Vladislav Zavialov authored
      This bit of documentation got outdated after commit
      1fcede43
      cf01477f
    • Moritz Angermann's avatar
      Load .lo as well. · 761dcb84
      Moritz Angermann authored
      Some archives contain so called linker objects, with the affectionate
      .lo suffic.  For example the musl libc.a will come in that form.  We
      still want to load those objects, hence we should not discard them and
      look for .lo as well.  Ultimately we might want to fix this proerly by
      looking at the file magic.
      761dcb84
    • Simon Jakobi's avatar
      Use foldl' in unionManyUniqDSets · 9a9cc089
      Simon Jakobi authored
      9a9cc089
  2. 14 Jun, 2020 7 commits
  3. 13 Jun, 2020 27 commits