Incorrect range highlighting with qualified access to the operator
Open
Area-Diagnostics
Feature Improvement
- Dominant language
- F#
- Stars
- 4.3k
- Forks
- 876
- Avg merge
- 4d 11h
- Merged PRs (30d)
- 131
Description
**Repro steps**
Paste the following code snippets into the editor
```f#
module Foo =
let inline (==) a b = a + b
let o = obj()
let _ = Foo.(==) o
```
**Expected behavior**
The error highlighting range covers the entire expression `Foo.(==)`
**Actual behavior**
The error highlighting range doesn't take into account the parenthesis and only covers `Foo.(==`

Probably, the problem is that the range of the expression in this case is calculated as a union of the idents ranges, without taking into account the parentheses.
Contributor guide
Assessment
This issue has not been assessed yet.