Skip to content

Fix #21954 by unconditionally retaining tag info on variables used in function position.

Andreas Klebinger requested to merge wip/andreask/infer_exprs into master

Fixes #21954 (closed). For an expression like:

case x of y
  Con z -> z

We currently only retain tag infor for x as it's known to be scrutinized. But we should also retain it for z since a rhs of just a variable implicitly represents eval+return. So retaining the tag info can sometimes avoid the eval step.

This patch makes it so.

Edited by Simon Peyton Jones

Merge request reports