Skip to content

Use GetFullPath when determining the full path in command line options#7376

Merged
cartermp merged 1 commit intodotnet:masterfrom
cartermp:fix-gtd-forward-slash
Aug 9, 2019
Merged

Use GetFullPath when determining the full path in command line options#7376
cartermp merged 1 commit intodotnet:masterfrom
cartermp:fix-gtd-forward-slash

Conversation

@cartermp
Copy link
Contributor

@cartermp cartermp commented Aug 9, 2019

Fixes #4016, #5521, #4446

This is @chadunit's idea here: #4016 (comment)

Quick writeup:

  • When QuickInfo navigation is built out, it uses ranges coming from the actual F# symbol(s) it has access to. The ranges for these symbols include path information that has been normalized.
  • When f12 is invoked, it calls into a route that creates a range type based on the file name that the editor host supplies.
  • The VS editor host did not normalize file paths prior to this change, so the 2nd point means that the range types created won't match actual ranges that live on a symbol
  • This discrepancy causes a failure in an equality check in name resolution
  • This equality failure results in an inability to navigate to the symbol under the caret

Copy link
Contributor

@TIHan TIHan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After this, we should cherry pick it into release/dev16.3 - looks good. When we tested, it seems to fixed the issue with navigation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Go To Definition fails if containing file is referenced with forward slash

2 participants