godotengine / godotengine/godot

Symbol lookup does not recognize internal classes inherited from other internal classes

Open
#117,948 0 comments 1 reaction 0 assignees View on GitHub
bug topic:editor topic:gdscript
Dominant language
C++
Stars
117k
Forks
26.8k
PR merge metrics
PR metrics pending

Description

### Tested versions

4.7 dev3

### System information

W10

### Issue description

The title might be confusing, but it boils down to:
```GDScript
class Class1:
pass

class Class2 extends Class1:
var p: Class1
```
When you try to Ctrl+Click Class1 referenced after extends or the `p` variable, it won't be recognized. Here, I'm holding Ctrl all the time:

https://github.com/user-attachments/assets/d3f14caf-938c-4f04-aa6a-0d4b8f5ddd3c

See how Class1 reference is not underlined.

### Steps to reproduce

Use the code above.

### Minimal reproduction project (MRP)

N/A

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the issue in the GDScript example from the report and trace the editor's Ctrl+Click symbol lookup for the `extends` reference and the typed variable. Done means internal classes inherited from other internal classes are recognized and navigable in both locations.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.