microsoft / microsoft/TypeScript

`satisfies` does not work on a variable called `type`

Offen
#58,248 0 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bug Domain: Parser Help Wanted
Vorherrschende Sprache
Go
Sterne
111k
Forks
14.4k
Ø Merge
1 T. 19 Std.
Gemergte PRs (30 T.)
117

Beschreibung

🔎 Search Terms

satisfies, type, ts1005

🕗 Version & Regression Information

This happens from 3.3.3333 to nightly.

satisfies was introduced in 4.9.

⏯ Playground Link

https://www.typescriptlang.org/play?#code/MYewdgzgLgBFCeAHApjAvDA5AD0wKDwRRggEMoBLCAMwuQhKgCcKwBzPIA

💻 Code
const type = 'x'

type satisfies string // '=' expected.(1005)
🙁 Actual behavior

Gives an '=' expected.(1005) error.

🙂 Expected behavior

For it to work like with any other variable of any other name, specially since it's a common variable name.

Additional information about the issue

This also happens with other TypeScript keywords like interface.

If I wrap type in parenthesis it works, is this expected behaviour? The Deno formatter removes it (prettier handles it correctly), should I report this to them.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit der verknüpften Playground-Reproduktion und dem Parser-Pfad für satisfies-Ausdrücke, auf die Bezeichner folgen, die TypeScript-Schlüsselwörter sind, etwa type und interface. Bestätige das Verhalten anhand des gezeigten Snippets; abgeschlossen ist die Aufgabe, wenn diese Variablennamen wie andere Namen ohne TS1005 geparst werden und dabei die bestehende Schlüsselwortsyntax erhalten bleibt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
typescript
Bereich
compilers
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
38/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.