### 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
if (!p_range.c_str) {
		return;
	}
	copy_from(p_range.c_str, p_range.len);
}
int64_t String::hex_to_int() const {
	int len = length();
	if (len == 0) {
		return 0;
	}
	const char32_t *s = ptr();
	int64_t sign = s[0] == '-' ? -1 : 1;
	if (sign < 0) {
		s++;
	}
	if (len > 2 && s[0] == '0' && lower_case(s[1]) == 'x') {
		s += 2;
	}
	int64_t hex = 0;
	while (*s) {
		char32_t c = lower_case(*s);
		int64_t n;
		if (is_digit(c)) {
			n = c - '0';
		} else if (c >= 'a' && c <= 'f') {
			n = (c - 'a') + 10;
		} else {
			ERR_FAIL_COND_V_MSG(true, 0, "Invalid hexadecimal notation character \"" + chr(*s) + "\" in string \"" + *this + "\".");
		}