Skip to content

[Proposal]: Labeled break and continue Statements #9875

@CyrusNajmabadi

Description

@CyrusNajmabadi

Labeled break and continue Statements

Summary

Allow break and continue statements to optionally specify a label that identifies which loop or switch
statement to target, enabling cleaner control flow in nested constructs without requiring goto statements.

For example:

```csharp
outer: for (int x = 0; x < xMax; x++)
{
    for (int y = 0; y < yMax; y++)
    {
        if (ShouldSkipRest(x, y))
            continue outer;
        
        if (ShouldExitAll(x, y))
            break outer;
    }
}

Design meetings

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions