Localise the binder for the nested defn in LiberateCase,
to avoid name clashes between top-level names.
Discovered by Laszlo.
Merge to STABLE
-- processing the rhs with an *un-extended* environment, so
-- that the same process doesn't occur for ever!
--
- extended_env = addRecBinds env [ (setIdNotExported binder, libCase env_body rhs)
+ extended_env = addRecBinds env [ (adjust binder, libCase env_body rhs)
| (binder, rhs) <- pairs ]
-- Two subtle things: