### Godot version

4.0.2

### System information

Windows 10 x64

### Issue description

![image](https://user-images.githubusercontent.com/2223172/231459722-294d88f9-dae3-4a3f-8e7f-e5340ca0dd25.png)
Both paths point to the same node, but the second one appears as if the node wasn't found. I assume this is because the NodePaths in array don't have the scene's node as "parent", so the path can't be resolved properly.

### Steps to reproduce

1.
```GDScript
@export var np1: NodePath
@export var np2: Array[NodePath]
```
2. Assign the same node
3. Compare the results

### Minimal reproduction project

N/A
Vector<Property> properties;
		Vector<int> groups;
	};
	struct DeferredNodePathProperties {
		Node *base = nullptr;
		StringName property;
		NodePath path;
	};
	Vector<NodeData> nodes;
	struct ConnectionData {
		int from = 0;
		int to = 0;
		int signal = 0;
		int method = 0;
		int flags = 0;
		int unbinds = 0;
		Vector<int> binds;
	};
	Vector<ConnectionData> connections;
	Error _parse_node(Node *p_owner, Node *p_node, int p_parent_idx, HashMap<StringName, int> &name_map, HashMap<Variant, int, VariantHasher, VariantComparator> &variant_map, HashMap<Node *, int> &node_map, HashMap<Node *, int> &nodepath_map);
	Error _parse_connections(Node *p_owner, Node *p_node, HashMap<StringName, int> &name_map, HashMap<Variant, int, VariantHasher, VariantComparator> &variant_map, HashMap<Node *, int> &node_map, HashMap<Node *, int> &nodepath_map);
	String path;
	uint64_t last_modified_time = 0;
	static bool disable_placeholders;
	Vector<String> _get_node_groups(int p_idx) const;
	int _find_base_scene_node_remap_key(int p_idx) const;
protected:
	static void _bind_methods();
public:
	enum {