Skip to content

Improve parser error recovery for misplaced ref modifier of a struct declaration #84734

Description

@DoctorKrolic

Case 1:

Snippet:

ref public struct MyStruct;

Expected:
ref is in the modifiers list for MyStruct, error about its misplacement

Actual:
ref is a part of RefTypeSyntax of IncompleteMemberSyntax while StructDeclarationSyntax starts from a public token. The error is 'Type expected' on public token

Case 2:

Snippet:

partial ref struct MyStruct;

Expected:
partial is in the modifiers list for MyStruct, error about its misplacement

Actual:
partial is its own IncompleteMemberSyntax. The error is on ref keyword saying about its misplacement instead

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions