Skip to content

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