### Godot version

4.0 rc1

### System information

Windows 11, GTX 1080Ti, Vulkan

### Issue description

Automplete can't find any variables and methods on custom classes when the nodes are loaded with `@onready`:

simple_rotate.gd:
```gdscript
extends Node2D
class_name SimpleRotate

@export var shouldRotate : bool = true
```

machine.gd:
```gdscript
@onready var wheel1 : SimpleRotate = $Wheel

func start_motor():
	wheel1.sho... # Doesn't autocomplete, it can't find shouldRotate 
```

If I add another cast like below, autocomplete does work:
machine.gd:
```gdscript
@onready var wheel1 : SimpleRotate = $Wheel as SimpleRotate

func start_motor():
	wheel1.shouldRotate = true # Autocomplete works
```

To make things even weirder, it does work if I make Wheel into a unique name and access it using %:
machine.gd:
```gdscript
@onready var wheel1 : SimpleRotate = $"%Wheel"

func start_motor():
	wheel1.shouldRotate = true # Autocomplete works
```


### Steps to reproduce

- Create a script with a class_name
- Add that script to a node
- Create another script referencing the node with the type of the script
- Try to let automcomplete find any methods or variables on the script with the class_name
- Notice that it fails

### Minimal reproduction project

N/A
if (p_context.base == nullptr) {
		return false;
	}
	const GDScriptParser::GetNodeNode *get_node = nullptr;
	switch (p_subscript->base->type) {
		case GDScriptParser::Node::GET_NODE: {
			get_node = static_cast<GDScriptParser::GetNodeNode *>(p_subscript->base);
		} break;
		case GDScriptParser::Node::IDENTIFIER: {
			const GDScriptParser::IdentifierNode *identifier_node = static_cast<GDScriptParser::IdentifierNode *>(p_subscript->base);
			switch (identifier_node->source) {
				case GDScriptParser::IdentifierNode::Source::MEMBER_VARIABLE: {
					if (p_context.current_class != nullptr) {
						const StringName &member_name = identifier_node->name;
						const GDScriptParser::ClassNode *current_class = p_context.current_class;
						if (current_class->has_member(member_name)) {
							const GDScriptParser::ClassNode::Member &member = current_class->get_member(member_name);
							if (member.type == GDScriptParser::ClassNode::Member::VARIABLE) {
								const GDScriptParser::VariableNode *variable = static_cast<GDScriptParser::VariableNode *>(member.variable);
								if (variable->initializer && variable->initializer->type == GDScriptParser::Node::GET_NODE) {
									get_node = static_cast<GDScriptParser::GetNodeNode *>(variable->initializer);
								}
							}
						}
					}
				} break;
				case GDScriptParser::IdentifierNode::Source::LOCAL_VARIABLE: {