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
    • Alan Zimmerman's avatar
    • 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
      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.
      Change HsMatchContext and HsStmtContext to use an id, not a GhcPass
      Add ApiAnns to Hs/Types
      Rebased 2020-03-25
      WIP on in-tree annotations
      Includes updating HsModule
      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
    • Vladislav Zavialov's avatar
      User's Guide: KnownNat evidence is Natural · cf01477f
      Vladislav Zavialov authored
      This bit of documentation got outdated after commit
    • 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.
    • Simon Jakobi's avatar
      Use foldl' in unionManyUniqDSets · 9a9cc089
      Simon Jakobi authored
  2. 14 Jun, 2020 7 commits
  3. 13 Jun, 2020 27 commits