fixhunt

biome complexity/noUselessUndefinedInitialization

labelled safe
Runs / 2026-10-17T19-29-18-334Z-biome-complexity_noUselessUndefinedInitializationbiome 2.5.152026-10-17 19:29 UTC6 programs × 1 round(s)6 programs, 1 fired, 1 fixed, 0 findings, 0 rejectedmodel cost $0.0001

Programs

idresulttitlehazard
r1-p001silent prediction offForced undefined initializationnull/undefined distinction, optional chaining short-circuit
r1-p002silentExported undefined propinterface/declaration merging and name collisions across scopes
r1-p003silent prediction offDefault parameter undefinednull/undefined distinction, optional chaining short-circuit
r1-p004fix okSwitch case undefined initfunction declarations inside blocks, switch cases, labeled statements
r1-p005silent prediction offRegex lastIndex resetregular expressions: escapes, unicode flag, lastIndex with the g flag
r1-p006silent prediction offGenerator yield undefinedasync/await, promise ordering, generators and yield position

Sources

r1-p001 · Forced undefined initialization
1const a = undefined;
2console.log(typeof a);
3console.log(a ?? 'default');
r1-p002 · Exported undefined prop
1export let x = undefined;
2console.log(x);
r1-p003 · Default parameter undefined
1function foo(x = undefined) { return x ?? 'default'; }
2foo();
r1-p004 · Switch case undefined init
1function test(z) { switch (z) { case 1: let x = undefined; break; default: console.log(x); break; } }
2test(2);
--- orig.js	2026-10-17 15:29:20.572255933 -0400
+++ fixed.js	2026-10-17 15:29:20.720270245 -0400
@@ -1,2 +1,2 @@
-function test(z) { switch (z) { case 1: let x = undefined; break; default: console.log(x); break; } }
+function test(z) { switch (z) { case 1: let x ; break; default: console.log(x); break; } }
 test(2);
r1-p005 · Regex lastIndex reset
1const rx = /\d+/g; const r1 = rx.exec('123'); console.log(r1[0]); const r2 = rx.exec('456'); console.log(r2[0]);
r1-p006 · Generator yield undefined
1function* gen() { yield undefined; }
2const g = gen();
3console.log(g.next().value);
4console.log(g.next().value);