### Godot version

9f12e7b52d944

### System information

arch linux

### Issue description

Attempting to edit from the editor a typed array exported from a tool script fails, any value is immediately reset, setters are never called.

### Steps to reproduce

Create a script such as follows and try to add and then change items of the array in the inspector.


```gdscript
@tool
extends Node

@export var x: Array[String]
```

### Minimal reproduction project

n/a
GDCLASS(EditorPropertyTextEnum, EditorProperty);
	HBoxContainer *default_layout = nullptr;
	HBoxContainer *edit_custom_layout = nullptr;
	OptionButton *option_button = nullptr;
	Button *edit_button = nullptr;
	LineEdit *custom_value_edit = nullptr;
	Button *accept_button = nullptr;
	Button *cancel_button = nullptr;
	Vector<String> options;
	bool string_name = false;
	bool loose_mode = false;
	void _emit_changed_value(String p_string);
	void _option_selected(int p_which);
	void _edit_custom_value();
	void _custom_value_submitted(String p_value);
	void _custom_value_accepted();
	void _custom_value_canceled();
protected:
	virtual void _set_read_only(bool p_read_only) override;
	static void _bind_methods();
	void _notification(int p_what);
public:
	void setup(const Vector<String> &p_options, bool p_string_name = false, bool p_loose_mode = false);
	virtual void update_property() override;
	EditorPropertyTextEnum();
};
class EditorPropertyPath : public EditorProperty {