Build on work item #207 to include variable equality. This involves two work items:
- Use equality facts just inferred from the computation done by an expression (for example,
a = b).
- Doing a dataflow analysis of a function body to infer equality facts. For example, in
if (a == b) {
lhs;
} else {
rhs;
}
we can refer that a == b in lhs.