{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreiajwm4vle77zic2pnbhu2xflrsnk7jrq55pcnuc6jk3d63aghczdy",
    "uri": "at://did:plc:pi6woz4d47bkuws673w2il2r/app.bsky.feed.post/3mpomod6kzuq2"
  },
  "path": "/t/making-ghc-upgrades-easy/14279#post_11",
  "publishedAt": "2026-07-02T17:24:34.000Z",
  "site": "https://discourse.haskell.org",
  "textContent": "blamario:\n\n>\n>     if impl(ghc >= 7.5)\n>       other-extensions: PolyKinds\n>\n\nThe issue being that this just enables or disables the extensions enabled instead of giving you version bounds.\n\nYou could simulate this by giving impossible build dependencies for certain ghc versions:\n\n\n    if impl(ghc <= 7.5)\n      build-depends: base < 0\n\n\nBut this wouldn’t be a satisfactory solution since you then can’t use the cabal constraint solver here.\n\nYou could add a dependency to the ghc or ghc-internal or ghc-experimental packages, but for most packages these are pointless dependencies, and this obviously wouldn’t work for alternative haskell compilers like mhs.",
  "title": "Making GHC upgrades easy"
}