Microsoft/TypeScript

The parsing problem of the compiler under specific syntax combinations

Open

#61 975 ouverte le 30 juin 2025

Voir sur GitHub
 (2 commentaires) (0 réactions) (1 assigné)TypeScript (6 726 forks)batch import
BugDomain: ParserHelp Wanted

Métriques du dépôt

Stars
 (48 455 stars)
Métriques de merge PR
 (Merge moyen 6j 17h) (9 PRs mergées en 30 j)

Description

🔎 Search Terms

The parsing problem of the compiler under specific syntax combinations

🕗 Version & Regression Information

  • This is the behavior in every version I tried

⏯ Playground Link

https://www.typescriptlang.org/play/?ts=5.8.3#code/MYGwhgzhAEAKYDsAuAnAlgUwgHgIID5poBvAKCKOAHsEJUBXYJKlACgAcUNg0IMAuaLgCUJchQlIAFrwB0nbrwzQAvNAU8+4ogF9t6rpoFDSe0gDN6CJmhrQI7MChRUA7q2GCARlSogMiGIS1LRI9lReXhgAJt6+-oFqDBgA3KT6XEj0KAhEAERgXsB50NjQrBARUdHQAPzQCBiucIiomDh06AgA5visBXmigo3N8MjoWNidaD19eV6D0MLyhkppZumW1ki2uQ5OLq4AjB6C0z1BFCF04ZExcX4BuUko9KnpEpnZueWVdzX1EYtcbtKZtWb9MCLYZNYFtSbnXr9BaiZYaNamdIWKw2Oz7ZxuABMp2gPkegTIwRoNz+1QeCWe0GSaQyGCyOXyhWKpV+VRidXKQLG8I64KRA2EQwasOFE1FXXFKKWK0UfHWpCAA

💻 Code

class Pantries<A>  {
    constructor(precise: A) {
        this.precise = precise
    }
    precise: A
}

function sparrow(): boolean {
    const sobbed: boolean = true;

    return  "abc" < (sobbed ? new Pantries<string>("a") : new Pantries<string>("b") ).precise;
}



function sparrow1(): string {
    const sobbed: boolean = true;

    return  (sobbed ? new Pantries<string>("a") : new Pantries<string>("b") ).precise;
}


function sparrow2(): boolean {
    const sobbed: boolean = true;

    return  "abc" < (sobbed ? (new Pantries<string>("a")) : new Pantries<string>("b") ).precise;
}

🙁 Actual behavior

There was a problem when parsing the sparrow method, while the other methods worked fine.

🙂 Expected behavior

There will be no error reports or clear prompts

Additional information about the issue

No response

Guide contributeur