[project @ 2001-10-17 11:26:04 by simonpj]
-------------------------------------------
nullAddr# fix for the HEAD
-------------------------------------------
*** DO NOT MERGE ***
nullAddr# is simply a name for (Lit nullAddrLit). Up
to now it has been a PrimOp with the rather stange type
nullAddr# :: Int# -> Addr#
which discards its argument. (I think the problem with
nullary primops is to do with the top-level bindings in
PrelPrimOpWrappers.) And there was a RULE in PrelRules
to rewrite
nullAddr _ ==> nullAddrLit
It's excessive to make it a PrimOp. We can just treat it
like unsafeCoerce#, which is made in MkId.lhs. So I've
done that, and given it the more sensible type
nullAddr# :: Addr#
I fixed all the occurrences I could find.