### Godot version

v4.0.3.stable.official [5222a99f5]

### System information

Godot v4.0.3.stable - Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 1080 (NVIDIA; 31.0.15.1694) - Intel(R) Core(TM) i5-10600KF CPU @ 4.10GHz (12 Threads)

### Issue description

There is no way to set the filter or repeat mode of a sampler2D array, trying to do so using shader hints `filter_nearest`/`filter_linear` or `repeat_enable`/`repeat_disable` results in an error:
`error(3): This hint is not supported for uniform arrays.`

Note: not a duplicate of #62472, which applies to `sampler2DArray`s, but not arrays of `sampler2D`s

### Steps to reproduce

```
shader_type spatial;

uniform sampler2D[8] textures : source_color, filter_nearest;
```

### Minimal reproduction project

N/A
if (current_function == varying_function_names.vertex) {
				if (p_varying.type < TYPE_INT) {
					*r_message = vformat(RTR("Varying with '%s' data type may only be assigned in the 'fragment' function."), get_datatype_name(p_varying.type));
					return false;
				}
				p_varying.stage = ShaderNode::Varying::STAGE_VERTEX;
			} else if (current_function == varying_function_names.fragment) {
				p_varying.stage = ShaderNode::Varying::STAGE_FRAGMENT;
			}
			break;
		case ShaderNode::Varying::STAGE_VERTEX_TO_FRAGMENT_LIGHT:
		case ShaderNode::Varying::STAGE_VERTEX:
			if (current_function == varying_function_names.fragment) {
				*r_message = RTR("Varyings which assigned in 'vertex' function may not be reassigned in 'fragment' or 'light'.");
				return false;
			}
			break;
		case ShaderNode::Varying::STAGE_FRAGMENT_TO_LIGHT:
		case ShaderNode::Varying::STAGE_FRAGMENT:
			if (current_function == varying_function_names.vertex) {
				*r_message = RTR("Varyings which assigned in 'fragment' function may not be reassigned in 'vertex' or 'light'.");
				return false;
			}
			break;
		default:
			break;
	}
	return true;
}
bool ShaderLanguage::_check_node_constness(const Node *p_node) const {