Commit e29001c9 authored by Committed by Simon MarlowBrowse files
Allow Any as an argument type to foreign prim functions
Real primops can take boxed arguments, and the Cmm code will receive the pointer to the object on the Haskell heap, e.g. for unpackClosure#. To be able to implement such a function in a "foreign prim" call, this needs to be allowed as well. By only allowing Any here (instead of arbitrary types), it is clearer that the function will not receive the value in any marshalled form, but just the raw pointer. Haskell code using such functions are likely to use unsafeCoerce# to turn a haskell value into a value of type Any.