dotnet/roslyn

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

Aberta

#84.734 aberto em 2 de ago. de 2026

 (5 comentários) (0 reação) (0 responsável)C# (4.257 forks)batch import
Area-CompilersFeature - Ref Fieldshelp wanted

Métricas do repositório

Stars
 (20.414 estrelas)
Métricas de merge de PR
 (Mesclagem média 6d 17h) (256 fundiu PRs em 30d)

Description

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

Guia do colaborador