You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
From type-system perspective in the first if it appear that the console.log is part of the body of the if because the type is in scope. However the JS emit is:
functionf1(){if(true);console.log("");}
So the console.log is not part of the if body.
π Expected behavior
functionf1(){if(true)types=string;// @ts-expect-error : "cannot find name 's'"console.log(""ass);}
Also happy for this to be a parse error. An if statement with only a type declaration as a body hopefully has no use cases.
Additional information about the issue
No response
The text was updated successfully, but these errors were encountered:
π Search Terms
type, scoping, ifStatement
π Version & Regression Information
β― Playground Link
https://www.typescriptlang.org/play/?ts=5.6.2#code/GYVwdgxgLglg9mABMAjACgJSIN4ChEGIzCJpQBOIAphvoYVAJ4AOViAzogLwcUxgBzANx16iCAnZwANlQB00uALQAiFYgCGndhhH1cAX1y5QkWAmQAmTDlFESZSjVtj6TVh269y-YXaP0EmBSsgpKqupaHLqGuEA
π» Code
π Actual behavior
From type-system perspective in the first
if
it appear that theconsole.log
is part of the body of theif
because the type is in scope. However the JS emit is:So the
console.log
is not part of the if body.π Expected behavior
Also happy for this to be a parse error. An if statement with only a type declaration as a body hopefully has no use cases.
Additional information about the issue
No response
The text was updated successfully, but these errors were encountered: