microsoft / microsoft/TypeScript

The parsing problem of the compiler under specific syntax combinations

Open
#61,975 2 comments 0 reactions 1 assignee Claimed by @johnfav03 View on GitHub
Bug Domain: Parser Help Wanted
Dominant language
Go
Stars
111k
Forks
14.3k
Avg merge
2d 4h
Merged PRs (30d)
132

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

```ts
class Pantries {
constructor(precise: A) {
this.precise = precise
}
precise: A
}

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

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

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

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

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

return "abc" < (sobbed ? (new Pantries("a")) : new Pantries("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_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.