Postpone implicit addition in case blocks

They get resolved later, when the lifted function is type checked. This
ensures that case blocks have the same pattern scoping rules as top
level functions (and saves a small amount of work!)

Fixes #1244