Page MenuHomeFeedback Tracker

Enscript definition resolution bug.
Closed, ResolvedPublic

Description

The code below produces output "Blabla".

class Test {}
void Blabla() { Print("Blabla"); }
void Repro() {
  Test t = new Test();
  t.Blabla();
}

We're clearly using dot operator which tries to access "Blabla" of "Test", the issue is that the resolution here somehow picks the global "Blabla". The compiler should throw an error with something along the lines of "class Test does not contain a definition for 'Blabla'", but instead it compiles fine and acts as if you simply called "Blabla()".

Details

Severity
None
Resolution
Open
Reproducibility
Always
Operating System
Windows 10 x64
Category
General
Steps To Reproduce

Compile and run

class Test {}
void Blabla() { Print("Blabla"); }
void Repro() {
  Test t = new Test();
  t.Blabla();
}

Event Timeline

Geez changed the task status from New to Assigned.Oct 16 2022, 11:12 PM
Geez closed this task as Resolved.Apr 20 2023, 4:10 PM
Geez claimed this task.
Geez added a subscriber: Geez.

Hello sharp1337.
This has been fixed internally and the fix will appear in one of the future updates.