### Tested versions

- Reproducible in: 4.2.1 Stable
- Testing working functionality in: 4.2 Stable and 4.1 Stable

### System information

Windows 11 - Godot v4.2.1-stable - Vulkan (Forward+)

### Issue description

I have a timer as shown in the attached image. When I tried to drag the timer to the script and use the dot notation to autocomplete the in-built functions of the Timer class, I didn't get suggestions.

While in v4.1 opening the same project gave intellisense.
![image](https://github.com/godotengine/godot/assets/29101013/5e5088d9-8e61-4d4b-a5b4-8deb37cd915b)


### Steps to reproduce

1. Create a Timer
2. Drag and drop in the gdscript editor.
3. Try to invoke the start method.

### Minimal reproduction project (MRP)

[Test DnD.zip](https://github.com/godotengine/godot/files/13658039/Test.DnD.zip)

bool found = false;
	if (p_expression == nullptr) {
		return false;
	}
	static int recursion_depth = 0;
	RecursionCheck recursion(&recursion_depth);
	if (unlikely(recursion.check())) {
		ERR_FAIL_V_MSG(false, "Reached recursion limit while trying to guess type.");
	}
	if (p_expression->is_constant) {
		
		r_type = _type_from_variant(p_expression->reduced_value);
		switch (p_expression->get_datatype().kind) {
			case GDScriptParser::DataType::ENUM:
			case GDScriptParser::DataType::CLASS:
				r_type.type = p_expression->get_datatype();
				break;
			default:
				break;
		}
		found = true;
	} else {
		switch (p_expression->type) {
			case GDScriptParser::Node::LITERAL: {
				const GDScriptParser::LiteralNode *literal = static_cast<const GDScriptParser::LiteralNode *>(p_expression);
				r_type = _type_from_variant(literal->value);
				found = true;
			} break;
			case GDScriptParser::Node::SELF: {
				if (p_context.current_class) {