Skip to content

WIP: Strict TTG extension fields (#18764)

Vladislav Zavialov requested to merge wip/strict-ttg into master

Before this patch, some of the TTG extension fields were non-strict:

data HsType pass
  = ...
  | HsTyVar  (XTyVar pass) PromotionFlag (LIdP pass)
  | HsAppTy  (XAppTy pass) (LHsType pass) (LHsType pass)
  | ...

Now they are strict:

data HsType pass
  = ...
  | HsTyVar  !(XTyVar pass) PromotionFlag (LIdP pass)
  | HsAppTy  !(XAppTy pass) (LHsType pass) (LHsType pass)
  | ...

See the ticket #18764 (or the commit message) for the motivation.

In addition to addressing the ticket, this patch also:

  • removes the unused XCoreAnn and XTickPragma
  • updates/adds comments in GHC/Hs/Extension.hs
Edited by Ben Gamari

Merge request reports