### Godot version

4.1.0

### System information

Windows 10, i711800H, Forward+ Vulkan

### Issue description

When using @export_group("Name") in a BaseClass, then inheriting from that BaseClass in another class and there also using @export_group("Name"), with the same group name, then running the project and re-saving the inherited class the project crashes with 
```
ERROR: FATAL: Index p_index = 3 is out of bounds (size() = 3).
   at: get (./core/templates/cowdata.h:155)
```

sometimes the editor crashes too after a while.

### Steps to reproduce

1. open reproduction project
2. Run the project.
3. Open the "super"script
4. Press CTRL + S to save it.

### Minimal reproduction project

[MRP_.zip](https://github.com/godotengine/godot/files/12137412/MRP_.zip)

GDScriptCodeGenerator::Address call_base = is_static ? GDScriptCodeGenerator::Address(GDScriptCodeGenerator::Address::CLASS) : GDScriptCodeGenerator::Address(GDScriptCodeGenerator::Address::SELF);
					gen->write_call(GDScriptCodeGenerator::Address(), call_base, setter_function, args);
				} else if (is_static) {
					GDScriptCodeGenerator::Address temp = codegen.add_temporary(static_var_data_type);
					if (assignment->use_conversion_assign) {
						gen->write_assign_with_conversion(temp, to_assign);
					} else {
						gen->write_assign(temp, to_assign);
					}
					gen->write_set_static_variable(temp, static_var_class, static_var_index);
					gen->pop_temporary();
				} else {
					
					if (assignment->use_conversion_assign) {
						gen->write_assign_with_conversion(target, to_assign);
					} else {
						gen->write_assign(target, to_assign);
					}
				}
				if (to_assign.mode == GDScriptCodeGenerator::Address::TEMPORARY) {
					gen->pop_temporary(); 
				}
				if (has_operation && assigned_value.mode == GDScriptCodeGenerator::Address::TEMPORARY) {
					gen->pop_temporary(); 
				}
				if (target.mode == GDScriptCodeGenerator::Address::TEMPORARY) {
					gen->pop_temporary(); 
				}
			}
			return GDScriptCodeGenerator::Address();