We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.
Already on GitHub? Sign in to your account
lint/suspicious/noFallthroughSwitchClause
break
never
Biome 1.5.2. This reproduces in the playground, so I think the rest of the output doesn't narrow anything down.
https://biomejs.dev/playground/?code=LwAvACAAVABoAGUAcwBlACAAdAB5AHAAZQBzACAAZQBtAHUAbABhAHQAZQA6ACAAYABpAG0AcABvAHIAdAAgAHsAIABhAHIAZwB2ACwAIABlAHgAaQB0ACAAfQAgAGYAcgBvAG0AIAAiAG4AbwBkAGUAOgBwAHIAbwBjAGUAcwBzACIAOwBgAAoAZABlAGMAbABhAHIAZQAgAGcAbABvAGIAYQBsACAAewAKACAAIABjAG8AbgBzAHQAIABhAHIAZwB2ADoAIABzAHQAcgBpAG4AZwBbAF0AOwAKACAAIABjAG8AbgBzAHQAIABlAHgAaQB0ADoAIAAoAGMAbwBkAGUAPwA6ACAAbgB1AG0AYgBlAHIAKQAgAD0APgAgAG4AZQB2AGUAcgA7AAoAfQAKAAoAYwBvAG4AcwB0ACAAZwByAGUAZQB0AGkAbgBnAEMAbwBkAGUAIAA9ACAAYQByAGcAdgBbADAAXQA7AAoAcwB3AGkAdABjAGgAIAAoAGcAcgBlAGUAdABpAG4AZwBDAG8AZABlACkAIAB7AAoAIAAgAGMAYQBzAGUAIAAiAGEAIgA6ACAAewAKACAAIAAgACAAYwBvAG4AcwBvAGwAZQAuAGwAbwBnACgAIgBoAGkAIgApADsACgAgACAAIAAgAGUAeABpAHQAKAAwACkAOwAKACAAIAB9AAoAIAAgAGMAYQBzAGUAIAAiAGIAIgA6ACAAewAKACAAIAAgACAAYwBvAG4AcwBvAGwAZQAuAGwAbwBnACgAIgBoAG8AdwBkAHkAIgApADsACgAgACAAIAAgAGUAeABpAHQAKAAxACkAOwAKACAAIAB9AAoAIAAgAGQAZQBmAGEAdQBsAHQAOgAgAHsACgAgACAAIAAgAHQAaAByAG8AdwAgAG4AZQB3ACAARQByAHIAbwByACgAIgBJAG4AdgBhAGwAaQBkACAAZwByAGUAZQB0AGkAbgBnACAAYwBvAGQAZQAuACIAKQA7AAoAIAAgAH0ACgB9AAoA
Code from the playground link:
// These types emulate: `import { argv, exit } from "node:process";` declare global { const argv: string[]; const exit: (code?: number) => never; } const greetingCode = argv[0]; switch (greetingCode) { case "a": { console.log("hi"); exit(0); } case "b": { console.log("howdy"); exit(1); break; } default: { throw new Error("Invalid greeting code."); } }
Since the type of exit from node:process is (code?: number) => never, TypeScript considers any code that follows it to be unreachable.
exit
node:process
(code?: number) => never
However, Biome shows an error in case clauses if I remove an unreachable break statement:
case
I'd love it if Biome could match TypeScript's assessment in this case.
The text was updated successfully, but these errors were encountered:
This is a duplicate of biomejs/website#49
Sorry, something went wrong.
No branches or pull requests
Environment information
Rule name
lint/suspicious/noFallthroughSwitchClause
Playground link
https://biomejs.dev/playground/?code=LwAvACAAVABoAGUAcwBlACAAdAB5AHAAZQBzACAAZQBtAHUAbABhAHQAZQA6ACAAYABpAG0AcABvAHIAdAAgAHsAIABhAHIAZwB2ACwAIABlAHgAaQB0ACAAfQAgAGYAcgBvAG0AIAAiAG4AbwBkAGUAOgBwAHIAbwBjAGUAcwBzACIAOwBgAAoAZABlAGMAbABhAHIAZQAgAGcAbABvAGIAYQBsACAAewAKACAAIABjAG8AbgBzAHQAIABhAHIAZwB2ADoAIABzAHQAcgBpAG4AZwBbAF0AOwAKACAAIABjAG8AbgBzAHQAIABlAHgAaQB0ADoAIAAoAGMAbwBkAGUAPwA6ACAAbgB1AG0AYgBlAHIAKQAgAD0APgAgAG4AZQB2AGUAcgA7AAoAfQAKAAoAYwBvAG4AcwB0ACAAZwByAGUAZQB0AGkAbgBnAEMAbwBkAGUAIAA9ACAAYQByAGcAdgBbADAAXQA7AAoAcwB3AGkAdABjAGgAIAAoAGcAcgBlAGUAdABpAG4AZwBDAG8AZABlACkAIAB7AAoAIAAgAGMAYQBzAGUAIAAiAGEAIgA6ACAAewAKACAAIAAgACAAYwBvAG4AcwBvAGwAZQAuAGwAbwBnACgAIgBoAGkAIgApADsACgAgACAAIAAgAGUAeABpAHQAKAAwACkAOwAKACAAIAB9AAoAIAAgAGMAYQBzAGUAIAAiAGIAIgA6ACAAewAKACAAIAAgACAAYwBvAG4AcwBvAGwAZQAuAGwAbwBnACgAIgBoAG8AdwBkAHkAIgApADsACgAgACAAIAAgAGUAeABpAHQAKAAxACkAOwAKACAAIAB9AAoAIAAgAGQAZQBmAGEAdQBsAHQAOgAgAHsACgAgACAAIAAgAHQAaAByAG8AdwAgAG4AZQB3ACAARQByAHIAbwByACgAIgBJAG4AdgBhAGwAaQBkACAAZwByAGUAZQB0AGkAbgBnACAAYwBvAGQAZQAuACIAKQA7AAoAIAAgAH0ACgB9AAoA
Code from the playground link:
Expected result
Since the type of
exit
fromnode:process
is(code?: number) => never
, TypeScript considers any code that follows it to be unreachable.However, Biome shows an error in
case
clauses if I remove an unreachablebreak
statement:I'd love it if Biome could match TypeScript's assessment in this case.
Code of Conduct
The text was updated successfully, but these errors were encountered: