### Godot version

4.0 beta 13

### System information

Windows 10

### Issue description

Looks like a regression of  #67498
Error fired :
```
ERROR: Uniforms supplied for set (3):
Set: 3 Binding: 0 Type: UniformBuffer Writable: N Length: 16
are not the same format as required by the pipeline shader. Pipeline shader requires the following bindings:
Set: 0 Binding: 1 Type: Sampler Writable: N Length: 12
Set: 0 Binding: 2 Type: Sampler Writable: N Length: 1
Set: 0 Binding: 3 Type: Sampler Writable: N Length: 1
Set: 0 Binding: 4 Type: Sampler Writable: N Length: 1
Set: 0 Binding: 5 Type: StorageBuffer Writable: N Length: 0
Set: 0 Binding: 6 Type: StorageBuffer Writable: N Length: 0
Set: 0 Binding: 7 Type: StorageBuffer Writable: N Length: 0
Set: 0 Binding: 8 Type: UniformBuffer Writable: N Length: 3712
Set: 0 Binding: 9 Type: StorageBuffer Writable: N Length: 0
Set: 0 Binding: 10 Type: StorageBuffer Writable: N Length: 0
Set: 0 Binding: 11 Type: Texture Writable: N Length: 1
Set: 0 Binding: 12 Type: Texture Writable: N Length: 1
Set: 0 Binding: 13 Type: StorageBuffer Writable: N Length: 0
Set: 0 Binding: 14 Type: StorageBuffer Writable: N Length: 0
Set: 0 Binding: 15 Type: UniformBuffer Writable: N Length: 496
Set: 1 Binding: 0 Type: UniformBuffer Writable: N Length: 5632
Set: 1 Binding: 1 Type: UniformBuffer Writable: N Length: 144
Set: 1 Binding: 2 Type: StorageBuffer Writable: N Length: 0
Set: 1 Binding: 3 Type: Texture Writable: N Length: 1
Set: 1 Binding: 4 Type: Texture Writable: N Length: 1
Set: 1 Binding: 5 Type: Texture Writable: N Length: 1
Set: 1 Binding: 6 Type: Texture Writable: N Length: 1
Set: 1 Binding: 7 Type: Texture Writable: N Length: 8
Set: 1 Binding: 8 Type: Texture Writable: N Length: 8
Set: 1 Binding: 9 Type: StorageBuffer Writable: N Length: 0
Set: 1 Binding: 10 Type: Texture Writable: N Length: 1
Set: 1 Binding: 11 Type: Texture Writable: N Length: 1
Set: 1 Binding: 12 Type: Texture Writable: N Length: 1
Set: 1 Binding: 13 Type: Texture Writable: N Length: 1
Set: 1 Binding: 14 Type: Texture Writable: N Length: 1
Set: 1 Binding: 15 Type: Texture Writable: N Length: 1
Set: 1 Binding: 16 Type: Texture Writable: N Length: 1
Set: 1 Binding: 17 Type: Texture Writable: N Length: 1
Set: 1 Binding: 18 Type: UniformBuffer Writable: N Length: 896
Set: 1 Binding: 19 Type: Texture Writable: N Length: 1
Set: 1 Binding: 20 Type: Texture Writable: N Length: 1
Set: 2 Binding: 0 Type: StorageBuffer Writable: N Length: 0
Set: 3 Binding: 2 Type: Texture Writable: N Length: 1
   at: (drivers/vulkan/rendering_device_vulkan.cpp:7347)
```



### Steps to reproduce

Create a shader with two `uniform sampler2D`, one with `hint_depth_texture`. Try to inverse the two sampler2D,

### Minimal reproduction project

Not needed
StructNode *pstruct = nullptr;
			bool struct_init = false;
			_get_completable_identifier(p_block, COMPLETION_IDENTIFIER, identifier);
			if (shader->structs.has(identifier)) {
				pstruct = shader->structs[identifier].shader_struct;
				struct_init = true;
			}
			tk = _get_token();
			if (tk.type == TK_PARENTHESIS_OPEN) {
				if (struct_init) { 
					const StringName &name = identifier;
					OperatorNode *func = alloc_node<OperatorNode>();
					func->op = OP_STRUCT;
					func->struct_name = name;
					func->return_cache = TYPE_STRUCT;
					VariableNode *funcname = alloc_node<VariableNode>();
					funcname->name = name;
					func->arguments.push_back(funcname);
					for (int i = 0; i < pstruct->members.size(); i++) {
						Node *nexpr;
						if (pstruct->members[i]->array_size != 0) {
							nexpr = _parse_array_constructor(p_block, p_function_info, pstruct->members[i]->get_datatype(), pstruct->members[i]->struct_name, pstruct->members[i]->array_size);
							if (!nexpr) {
								return nullptr;
							}
						} else {
							nexpr = _parse_and_reduce_expression(p_block, p_function_info);
							if (!nexpr) {
								return nullptr;
							}