microsoft / microsoft/TypeScript

Behavior difference: Inline comment on arrow function parameters is emitted on tsc but not on tsgo

Offen
#63,826 0 Kommentare 1 Reaktion 2 zugewiesene Personen Auf GitHub ansehen

@jakebailey arbeitet bereits daran.

Seit 01.6.2026.

  • #4160 von @copilot-swe-agent — ohne Merge geschlossen
Domain: Comment Emit Domain: Declaration Emit
Vorherrschende Sprache
Go
Sterne
111k
Forks
14.3k
Ø Merge
2 T. 4 Std.
Gemergte PRs (30 T.)
132

Beschreibung

Right now tsc will strip inline comment on the last parameter, but it is still printing (useful) comments on other lines. But still, I think these inline comments should be retained in tsgo.

---

## Steps to reproduce

1. Start a plain new project
- "@typescript/native-preview": "7.0.0-dev.20260523.1",
- "typescript": "6.0.3"
2. Run `npx tsgo --init` to get the default tsconfig. Turn on these flags as well.
- "stableTypeOrdering": true,
3. Add `src/main.js`. Run `npx tsc --noEmit` & `npx tsgo --noEmit` to see the difference.

```ts
// src/main.ts
export const fn = (
foo: boolean, // comment on foo
bar: string, // comment on bar
buzz: number, // comment on buzz
) => {}
```

## Behavior with `typescript@6.0`

```ts
export declare const fn: (foo: boolean, // comment on foo
bar: string, // comment on bar
buzz: number) => void;
//# sourceMappingURL=main.d.ts.map
```

## Behavior with `tsgo`

```ts
export declare const fn: (foo: boolean, bar: string, buzz: number) => void;
//# sourceMappingURL=main.d.ts.map
```

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.

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

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