I now have a case like this:
class MyClass
{
public function foo()
{
$this->nonExisting = true;
}
}
In the above, it correctly underlines nonExisting.
Consider this case:
class MyClass
{
public function foo()
{
$this->nonExisting = true;
}
public function __get(string $name)
{
return null;
}
}
Now, as you described in your solution, the nonExisting is not underlined anymore.
Still, I would consider this to be something that PHP Tools should report as an error and underline.
Reason is that I do an assignment to the variable (i.e. no read) and I do not provide a __set magic method.
Is it possible for your engine to detect and report those cases, please?