Microsoft/TypeScript

Comment like jsx text emitted twice when preserve enabled

Open

#61860 opened on Jun 13, 2025

View on GitHub
 (1 comment) (0 reactions) (0 assignees)TypeScript (48,455 stars) (6,726 forks)batch import
BugDomain: JSX/TSXHelp Wanted

Description

🔎 Search Terms

comment like jsx text, preserve jsx

🕗 Version & Regression Information

  • This is the behavior in every version I tried, and I reviewed the FAQ for entries about _________

⏯ Playground Link

https://www.typescriptlang.org/play/?jsx=1#code/GYVwdgxgLglg9mABAQQA6oBQEpEG8C+AUMRAgM5SIBWZAHogLyIA8aqAfAPQBUiYcibp1w9EARkGdxAJgDMiUdMn5R-Sc05t2AbkJA

💻 Code

function App() {}
const jsx = <App>/* no */{/* 1 */ 123 /* 2 */}/* no */</App>;

🙁 Actual behavior

These duplicate sections will be rendered in the JSX text output:

"use strict";
function App() { }
const jsx = <App> /* no *//* no */{/* 1 */123 /* 2 */} /* no *//* no */</App>
//                ~~~~~~~                              ~~~~~~~

🙂 Expected behavior

"use strict";
function App() { }
- const jsx = <App> /* no *//* no */{/* 1 */123 /* 2 */} /* no *//* no */</App>
+ const jsx = <App> /* no */{/* 1 */123 /* 2 */} /* no */</App>

Additional information about the issue

No response

Contributor guide