Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Name resolution: report interface, record, and union types; report type arguments #14773

Closed
wants to merge 3 commits into from

Conversation

auduchinok
Copy link
Member

Adds type checker recovery for cases where an interface, record, or union type is used in an expression.
Also adds reporting of the inferred type arguments, makes them accessible in reported FSharpSymbolUse.GenericArguments.

IDisposable 
IList<int>
ITop<int>.INested1<double>
ITop<int>.INested2

Before:
Screenshot 2023-02-20 at 22 39 15

After
Screenshot 2023-02-20 at 22 33 04

type R1 =
    { F: int }
    static member P = 1
   
type R2<'T> =
    { F: 'T }

R1
R2<int>

Screenshot 2023-02-20 at 22 34 07

type U1 = | A
type U2<'T> = | A

U1
U2<int>

Screenshot 2023-02-20 at 22 34 15

@auduchinok auduchinok requested a review from a team as a code owner February 20, 2023 21:40
@auduchinok auduchinok force-pushed the nameResolution-reportTypes branch from 0e4c02c to 819f33d Compare February 21, 2023 08:05
@auduchinok
Copy link
Member Author

OK, the record/union recovery approach wasn't right. I've removed it to see if it helps, will try to do that separately.

@auduchinok auduchinok closed this Mar 6, 2023
@auduchinok auduchinok reopened this Mar 6, 2023
@auduchinok
Copy link
Member Author

Reopening the PR to trigger the CI again.

@abonie
Copy link
Member

abonie commented Aug 12, 2024

Doing cleanup in PRs - please reopen if you deem appropriate

@abonie abonie closed this Aug 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

2 participants