Ensure exprIsCheap/exprIsExpandable deal with Cast properly
authorsimonpj@microsoft.com <unknown>
Tue, 15 Feb 2011 14:36:55 +0000 (14:36 +0000)
committersimonpj@microsoft.com <unknown>
Tue, 15 Feb 2011 14:36:55 +0000 (14:36 +0000)
commitc406b5bde899dd2b28e5239937c909d675bca356
tree47b3767c3a8ea4cffc19dc58bcdb6afc73137bd0
parentf95abb477e0bea25b4016df9565d1c7fe1e6e9f5
Ensure exprIsCheap/exprIsExpandable deal with Cast properly

This bug was causing a Lint error on the stable branch. For some
reason it doesn't show up in HEAD, but it's still worth fixing.

The point is that ((f `cast` co) a) is cheap if f has arity>1.
This was being gratuitously missed before.
compiler/coreSyn/CoreUtils.lhs