### 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)

_set_error("The class '" + p_script->name + "' shadows a native class", p_class);
			return ERR_ALREADY_EXISTS;
		}
	}
	GDScriptDataType base_type = _gdtype_from_datatype(p_class->base_type, p_script);
	int native_idx = GDScriptLanguage::get_singleton()->get_global_map()[base_type.native_type];
	p_script->native = GDScriptLanguage::get_singleton()->get_global_array()[native_idx];
	ERR_FAIL_COND_V(p_script->native.is_null(), ERR_BUG);
	
	switch (base_type.kind) {
		case GDScriptDataType::NATIVE:
			
			break;
		case GDScriptDataType::GDSCRIPT: {
			Ref<GDScript> base = Ref<GDScript>(base_type.script_type);
			if (base.is_null()) {
				return ERR_COMPILATION_FAILED;
			}
			if (main_script->has_class(base.ptr())) {
				Error err = _populate_class_members(base.ptr(), p_class->base_type.class_type, p_keep_state);
				if (err) {
					return err;
				}
			} else if (!base->is_valid()) {
				Error err = OK;
				Ref<GDScript> base_root = GDScriptCache::get_shallow_script(base->path, err, p_script->path);
				if (err) {
					_set_error(vformat(R"(Could not parse base class "%s" from "%s": %s)", base->fully_qualified_name, base->path, error_names[err]), nullptr);
					return err;
				}