Skip to content

Interface files shouldn't contain SrcLoc?

There are currently binary instances for SrcLoc, SrcSpan, and Located which means that there are a few places where source locations are serialised into interface files.

  • We are careful to remove all source locations from expressions (see IfaceExpr)
  • An interface file can be distributed without any source file, so the location wouldn't make sense to be reported to a user.
  • The source location contains the filepath the file was compiled at, so the build location can affect the interface hash.

Related to #22162 (closed)

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information