### 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
container = nullptr;
		}
		return;
	}
	object->set_array(array);
	int size = array.call("size");
	int max_page = MAX(0, size - 1) / page_length;
	page_index = MIN(page_index, max_page);
	int offset = page_index * page_length;
	edit->set_text(vformat(TTR("%s (size %s)"), array_type_name, itos(size)));
	bool unfolded = get_edited_object()->editor_is_section_unfolded(get_edited_property());
	if (edit->is_pressed() != unfolded) {
		edit->set_pressed(unfolded);
	}
	if (unfolded) {
		updating = true;
		if (!container) {
			container = memnew(MarginContainer);
			container->set_theme_type_variation("MarginContainer4px");
			add_child(container);
			set_bottom_editor(container);
			VBoxContainer *vbox = memnew(VBoxContainer);
			container->add_child(vbox);
			HBoxContainer *hbox = memnew(HBoxContainer);
			vbox->add_child(hbox);
			Label *size_label = memnew(Label(TTR("Size:")));
			size_label->set_h_size_flags(SIZE_EXPAND_FILL);
			hbox->add_child(size_label);
			size_slider = memnew(EditorSpinSlider);
			size_slider->set_step(1);