Types in particular are incorrectly mapped if their associated nodes are matched. For example, consider this:
// base
int a = 2;
// left
int a = 2;
// right
Integer a = 2;
Here, the node int a = 2 will be matched to the nod eInteger a = 2, but that doesn't mean that it's correct to match int to Integer.
To fix this, we can check that the content of the nodes match before inferring the matching.
Types in particular are incorrectly mapped if their associated nodes are matched. For example, consider this:
Here, the node
int a = 2will be matched to the nod eInteger a = 2, but that doesn't mean that it's correct to matchinttoInteger.To fix this, we can check that the content of the nodes match before inferring the matching.