After resolving a reference to a primitive value, we want to set its parent pointer so that `Tree::resolve` can navigate upward and update the cached resolved status of each node.
After resolving a reference to a primitive value, we want to set its parent pointer so that `Tree::resolve` can navigate upward and update the cached resolved status of each node.