### Godot version

4.0.3

### System information

Windows10

### Issue description

sky shader accepts uniform vec3, vec4, vec3 array, but not vec4 array

### Steps to reproduce

simply pass Vector4 to uniform vec4[] from gdscript

### Minimal reproduction project

gdscript

sky_material.set_shader_parameter("v3",Vector3(1,0.8,0.5)) - v
sky_material.set_shader_parameter("v4",Vector4(1,0.8,0.5,0.2)) - v
sky_material.set_shader_parameter("v3a",[Vector3(1,0.8,0.5)]) - v
sky_material.set_shader_parameter("v4a",[Vector4(1,0.8,0.5,0.2)]) - x

sky gdshader

uniform vec3 v3;
uniform vec4 v4;
uniform vec3 v3a[1];
uniform vec4 v4a[1];

void sky(){
    COLOR.r = v4a[0].w
}
switch (p_what) {
		case Node3D::NOTIFICATION_ENTER_TREE: {
			add_to_group(SceneStringNames::get_singleton()->shader_overrides_group);
			_activate();
		} break;
		case Node3D::NOTIFICATION_EXIT_TREE: {
			if (active) {
				
				for (const KeyValue<StringName, Override> &E : overrides) {
					const Override *o = &E.value;
					if (o->in_use) {
						RS::get_singleton()->global_shader_parameter_set_override(E.key, Variant());
					}
				}
			}
			remove_from_group(SceneStringNames::get_singleton()->shader_overrides_group_active);
			remove_from_group(SceneStringNames::get_singleton()->shader_overrides_group);
			get_tree()->call_group_flags(SceneTree::GROUP_CALL_DEFERRED, SceneStringNames::get_singleton()->shader_overrides_group, "_activate"); 
			active = false;
		} break;
	}
}
PackedStringArray ShaderGlobalsOverride::get_configuration_warnings() const {