Retain inline-pragma information on unfoldings in interface files
authorsimonpj@microsoft.com <unknown>
Wed, 25 Apr 2007 07:49:24 +0000 (07:49 +0000)
committersimonpj@microsoft.com <unknown>
Wed, 25 Apr 2007 07:49:24 +0000 (07:49 +0000)
WARNING: this patch changes interface-file formats slightly
   you will need to recompile your libraries

Duncan Coutts wanted to export a function that has a NOINLNE pragma
in a local let-defintion.  This works fine within a module, but was
not surviving across the interface-file serialisation.

http://www.haskell.org/pipermail/glasgow-haskell-users/2007-March/012171.html

Regardless of whether or not he's doing something sensible, it seems
reasonable to try to retain local-binder IdInfo across interface files.
This initial patch just retains inline-pragma info, on the grounds that
other IdInfo can be re-inferred at the inline site.

Interface files get a tiny bit bigger, but it seesm slight.


No differences found