### Godot version

4.0.beta.16

### System information

N/A

### Issue description

```gdscript
func _run() -> void:
	click_this_function_doesnt_jump_to_its_line() # this works
	self.click_this_function_doesnt_jump_to_its_line() # add self breaks click-jump























































func click_this_function_doesnt_jump_to_its_line():
	pass
```

Ctrl + Click on self.click_this_function_doesnt_jump_to_its_line(), it won't jump to its definition.

### Steps to reproduce

N/A

### Minimal reproduction project

[godot.4.0.beta15.bugs.0.zip](https://github.com/godotengine/godot/files/10532051/godot.4.0.beta15.bugs.0.zip)

return true;
				}
				return false;
			} break;
			default: {
				return false;
			} break;
		}
	}
	return false;
}
static void _find_last_return_in_block(GDScriptParser::CompletionContext &p_context, int &r_last_return_line, const GDScriptParser::ExpressionNode **r_last_returned_value) {
	if (!p_context.current_suite) {
		return;
	}
	for (int i = 0; i < p_context.current_suite->statements.size(); i++) {
		if (p_context.current_suite->statements[i]->start_line < r_last_return_line) {
			break;
		}
		GDScriptParser::CompletionContext c = p_context;
		switch (p_context.current_suite->statements[i]->type) {
			case GDScriptParser::Node::FOR:
				c.current_suite = static_cast<const GDScriptParser::ForNode *>(p_context.current_suite->statements[i])->loop;
				_find_last_return_in_block(c, r_last_return_line, r_last_returned_value);
				break;
			case GDScriptParser::Node::WHILE:
				c.current_suite = static_cast<const GDScriptParser::WhileNode *>(p_context.current_suite->statements[i])->loop;
				_find_last_return_in_block(c, r_last_return_line, r_last_returned_value);
				break;
			case GDScriptParser::Node::IF: {