-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Open
Labels
Implemented Needs ECMA SpecThis feature has been implemented in C#, but still needs to be merged into the ECMA specificationThis feature has been implemented in C#, but still needs to be merged into the ECMA specificationProposal champion
Milestone
Description
This means that the only correct parse of
var x = a?.b.c!.d.e;is (a?.b.c)!.d.e, which prevents usage of null-forgiving in a chain of null-propagating accesses. To remedy this we could accept ! as an optional token after every simple name in the null-propagating non-terminal.
Was discussed in LDM 6/17/2020. There is agreement/support, but we'll need to investigate and make a concrete syntax proposal. Also, there is desire to keep terminal ! parsing as today: a?.b.c! would still parse as (a?.b.c)!.
For reference, the current syntax.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Implemented Needs ECMA SpecThis feature has been implemented in C#, but still needs to be merged into the ECMA specificationThis feature has been implemented in C#, but still needs to be merged into the ECMA specificationProposal champion
Type
Projects
Status
Done Umbrellas