### Godot version

4.0.2.stable

### System information

Manjaro Linux 5.15.113-1-MANJARO

### Issue description

When I was trying to figure out #77725 i stumbled upon this:
![image](https://github.com/godotengine/godot/assets/14893831/364b89ce-00b2-4aef-a85e-f10c16936005)

pressing enter results in 
![image](https://github.com/godotengine/godot/assets/14893831/07d53b82-c919-4635-80e2-e1809b6bb11f)


It looks simmilar to #48436 , but it started happening to every code completion and I have absolutely no clue how it happened.

It happened after I moved(using shift+arrow keys to select, tab to indent and alt+arrow keys to move down)  the three dicts in the picture to within the function and added the dict 4.

### Steps to reproduce

Here's roughly what I did 
(might be slightly inaccurate, I was basically messing around to try and see the scope of $77725 when it happened)

1) create an empty script
2) declare a couple of dictionaries
3) declare a function
4) try out code completion within the function
5) create a lambda within the function and try 4) again
6) move the dictionaries' declaration within the function using keyboard shortcuts and try 4)




### Minimal reproduction project

N/A
delimiter.line_only = p_line_only || p_end_key.is_empty();
	delimiters.insert(at, delimiter);
	if (!setting_delimiters) {
		delimiter_cache.clear();
		_update_delimiter_cache();
	}
	if (p_type == DelimiterType::TYPE_COMMENT) {
		_update_code_region_tags();
	}
}
void CodeEdit::_remove_delimiter(const String &p_start_key, DelimiterType p_type) {
	for (int i = 0; i < delimiters.size(); i++) {
		if (delimiters[i].start_key != p_start_key) {
			continue;
		}
		if (delimiters[i].type != p_type) {
			break;
		}
		delimiters.remove_at(i);
		if (!setting_delimiters) {
			delimiter_cache.clear();
			_update_delimiter_cache();
		}
		if (p_type == DelimiterType::TYPE_COMMENT) {
			_update_code_region_tags();
		}
		break;
	}
}
bool CodeEdit::_has_delimiter(const String &p_start_key, DelimiterType p_type) const {