Skip to main content

IOG GHC Update #31

ยท 2 min read

Triweekly update from the GHC DevX team at IOG.

Previous updates can be found here.

High-level Summaryโ€‹

This is our sprint after attending Zurihac and an IOG meetup in Zurich. The team was getting back into the groove but was in a holding pattern. Luite was on vacation for almost the entire sprint, Sylvain for one week, and Jeff contracted covid (again!) and was similarly out.

Detailsโ€‹

Jeff: Began migrating the patches in Haskell.nix to GHC head. In total there are 271 patches across numerous platforms and GHC versions. However most of these patches are duplicates, meaning that the same patch is listed in Haskell.nix for say GHC-9.8 and GHC-9.10. So we do not need to migrate such a patch twice. Jeff has finished opening branches to prepare for MRs on all the easily applied patches.

Jeff: Fixed a bug in the GHC-8.10.7 derivation in nixpkgs. If you've ever seen GHCi complain "freeHaskellFunctionPtr: not for me, guv!" then is one is for you.

Sylvain: Fixed a bug in atomic-primops that was causing GHC-9.10 to hang.

Sylvain: Fixed a fairly long-standing bug in GHC that caused a build with DWARF symbols and no tables-next-to-code to no longer build. This was noticed by Jeff while writing the perf chapter of the haskell optimization handbook. GHC#22792 GHC!12641

Sylvain: Resurrected Ben's former MR that issues deprecation warnings for primops. Previously, haddock in ghc-prim would show these deprecation warnings but GHC wouldn't warn at their use sites. This is now fixed; so now a warning will be issued to the user if they use a deprecated primop. GHC#19629 GHC!5548. So uses of deprecated primops in boot libraries have been fixed in the process (e.g. array!28).

Luite: Was on vacation getting lost in the mountains of Switzerland.