### 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
for (size_t i = 0; state && i < count; ++i) {
		String s = tc[i].data;
		state = s.begins_with(tc[i].part) == tc[i].expected;
		if (state) {
			String sb = tc[i].part;
			state = s.begins_with(sb) == tc[i].expected;
		}
		CHECK(state);
		if (!state) {
			break;
		}
	};
	CHECK(state);
}
TEST_CASE("[String] Ends with") {
	test_27_data tc[] = {
		{ "res://foobar", "foobar", true },
		{ "res", "res://", false },
		{ "abc", "abc", true }
	};
	size_t count = sizeof(tc) / sizeof(tc[0]);
	bool state = true;
	for (size_t i = 0; state && i < count; ++i) {
		String s = tc[i].data;
		state = s.ends_with(tc[i].part) == tc[i].expected;
		if (state) {
			String sb = tc[i].part;
			state = s.ends_with(sb) == tc[i].expected;
		}
		CHECK(state);