### Godot version

4.0 beta17

### System information

Windows10

### Issue description

call `"".split()`
Is there an infinite loop inside? Function does not return.

### Steps to reproduce

"".split()

### Minimal reproduction project

N/A
*(dst++) = c;
			skip = false;
		}
		cstr_size--;
		p_utf16++;
		c_prev = c;
	}
	if (skip) {
		*(dst++) = c_prev;
	}
	if (decode_error) {
		return ERR_PARSE_ERROR;
	} else {
		return OK;
	}
}
Char16String String::utf16() const {
	int l = length();
	if (!l) {
		return Char16String();
	}
	const char32_t *d = &operator[](0);
	int fl = 0;
	for (int i = 0; i < l; i++) {
		uint32_t c = d[i];
		if (c <= 0xffff) { 
			fl += 1;
			if ((c & 0xfffff800) == 0xd800) {
				print_unicode_error(vformat("Unpaired surrogate (%x)", c));
			}