Rhino is an open-source implementation of JavaScript written entirely in Java
This report summarizes scanner evidence for mozilla/rhino, a JavaScript project with 4,639 GitHub stars. SynthScan examined 691,808 lines of code across 5048 source files, recording 1666 pattern matches distributed across 8 syntactic categories. The legacy adjusted pattern signal is 10.4 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 438 finding(s).
Are imports declared and package/API names verified? 1227 finding(s).
Are wrappers, guards, and repeated structures necessary? 264 finding(s).
Which changes need focused human review? 1666 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 1666 distinct pattern matches across 8 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …ain/java/org/mozilla/javascript/tools/debugger/test.js | 21 | print("["+counter+"] Thread '"+thread_title); | CODE |
| HIGH | …ain/java/org/mozilla/javascript/tools/debugger/test.js | 32 | print("[DONE] Thread "+thread_title); | CODE |
| HIGH | …ain/java/org/mozilla/javascript/tools/debugger/test.js | 59 | print("[DONE] Thread "+thread_title); | CODE |
| HIGH | …ain/java/org/mozilla/javascript/tools/debugger/test.js | 97 | print(event + " "+methodName); | CODE |
| HIGH | tests/testsrc/tests/shell.js | 69 | print ("BUGNUMBER: " + BUGNUMBER ); | CODE |
| HIGH | tests/testsrc/tests/shell.js | 149 | print('--- NOTE: IN THIS TESTCASE, WE EXPECT EXIT CODE ' + n + ' ---'); | CODE |
| HIGH | tests/testsrc/tests/shell.js | 171 | print (FAILED + prefix + lines[i]); | CODE |
| HIGH | tests/testsrc/tests/shell.js | 188 | print (STATUS + lines[i]); | CODE |
| HIGH | tests/testsrc/tests/shell.js | 197 | print ('BUGNUMBER: ' + num); | CODE |
| HIGH | tests/testsrc/tests/shell.js | 314 | print(PASSED + description); | CODE |
| HIGH | tests/testsrc/tests/shell.js | 372 | print(PASSED + description); | CODE |
| HIGH | tests/testsrc/tests/shell.js | 571 | print('expect:\n' + expectP); | CODE |
| HIGH | tests/testsrc/tests/shell.js | 572 | print('actual:\n' + actualP); | CODE |
| HIGH | tests/testsrc/tests/shell.js | 683 | print('optionsReset: caught ' + ex); | CODE |
| HIGH | tests/testsrc/tests/shell.js | 748 | print('test(): empty testcase for gTc = ' + gTc + ' ' + e); | CODE |
| HIGH | tests/testsrc/tests/shell.js | 769 | print(s); | CODE |
| HIGH | tests/testsrc/tests/shell.js | 774 | print( string ); | CODE |
| HIGH | tests/testsrc/tests/shell.js | 799 | print( gTestcases[i].description + " = " +gTestcases[i].actual + | CODE |
| HIGH | tests/testsrc/tests/browser.js | 135 | print('gc: ' + ex); | CODE |
| HIGH | tests/testsrc/tests/ecma_3_1/Object/regress-444787.js | 60 | print('Ignore ' + ex); | CODE |
| HIGH | tests/testsrc/tests/js1_8/regress/regress-465220.js | 34 | print(s); | CODE |
| HIGH | tests/testsrc/tests/js1_8/regress/regress-459389.js | 16 | print('mmmm, food!'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/regress/regress-384412.js | 187 | print("End of Tests"); | CODE |
| HIGH | tests/testsrc/tests/js1_8/regress/regress-384412.js | 193 | print('expect: ' + a + ', actual: ' + b); | CODE |
| HIGH | tests/testsrc/tests/js1_8/regress/regress-467495-03.js | 28 | print(actual += typeof g + ','); | CODE |
| HIGH | tests/testsrc/tests/js1_8/regress/regress-467495-03.js | 33 | print(actual += g); | CODE |
| HIGH | tests/testsrc/tests/js1_8/regress/regress-469547.js | 30 | print(ex + ''); | CODE |
| HIGH | tests/testsrc/tests/js1_8/regress/regress-465567-01.js | 22 | print(actual += '' + e); | CODE |
| HIGH | tests/testsrc/tests/js1_8/regress/regress-465308.js | 28 | print(actual += "" + (0 | ((0x60000009) * 0x60000009)) + ','); | CODE |
| HIGH | tests/testsrc/tests/js1_8/regress/regress-467495-05.js | 27 | print(actual = g(1) + ''); | CODE |
| HIGH | tests/testsrc/tests/js1_8/regress/regress-466787.js | 29 | print(actual += '' + (3 + one)); } } | CODE |
| HIGH | tests/testsrc/tests/js1_8/regress/regress-453492.js | 24 | print(function() { [(let(a)1)[2]] = 3; }); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-419091.js | 26 | print(expect = actual = 'Test skipped. Requires scatter.'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-454744.js | 31 | print(ex + ''); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-417817.js | 23 | print("Hello, World!"); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-417817.js | 44 | print(expect = actual = 'Test skipped. Requires scatter.'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-471197.js | 39 | print('Test skipped due to lack of scatter threadsafe function'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-394709.js | 16 | print('This test requires countHeap which is not supported'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-378789.js | 26 | print('dumpHeap not supported'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-469625.js | 36 | print(actual = ex + ''); | CODE |
| HIGH | …ts/testsrc/tests/js1_8/extensions/regress-446169-02.js | 41 | print('Test skipped. Requires thread-safe build with scatter function.'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-415721.js | 35 | print('Test skipped. scatter or gc not defined.'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/lamport.js | 84 | print('Test skipped. scatter or sleep not defined.'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-479381.js | 26 | print(expect = actual = 'Test skipped: requires mulithreads'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-479381.js | 41 | print(scatter([f, f, f, f])); | CODE |
| HIGH | …ts/testsrc/tests/js1_8/extensions/regress-446169-01.js | 43 | print('Test skipped. Requires thread-safe build with scatter function.'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-422269.js | 34 | print('Test skipped. Requires countHeap function.'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-465453.js | 39 | print(actual = uneval(out)); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-479252.js | 27 | print(expect = actual = 'Test skipped: requires mulithreads and timeout.'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/dekker.js | 56 | print('Test skipped. scatter or sleep not defined.'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/peterson.js | 48 | print('Test skipped. scatter or sleep not defined.'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-475971.js | 26 | print(expect = actual = | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-475971.js | 53 | print("Done"); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-445818.js | 23 | print(expect = actual = 'Test skipped. scatter not defined'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/regress-465337.js | 27 | print(uneval(out)); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/simple-tree.js | 43 | print('Test skipped. scatter or sleep not defined.'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/for-in.js | 42 | print('Test skipped. scatter not defined.'); | CODE |
| HIGH | tests/testsrc/tests/js1_8/extensions/for-in.js | 44 | print('Test skipped. __parent__ not defined.'); | CODE |
| HIGH | …ts/testsrc/tests/js1_8/extensions/regress-476871-02.js | 31 | print(ex + ''); | CODE |
| HIGH⚡ | tests/testsrc/tests/js1_8/genexps/regress-349331.js | 62 | print("Failed!"); | CODE |
| 1124 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | …ava/org/mozilla/javascript/tools/tests/SanityTest.java | 36 | new org.mozilla.javascript.tools.jsc.Main(); | CODE |
| CRITICAL | …n/java/org/mozilla/javascript/tools/debugger/Main.java | 175 | Global global = org.mozilla.javascript.tools.shell.Main.getGlobal(); | CODE |
| CRITICAL | …n/java/org/mozilla/javascript/tools/debugger/Main.java | 192 | org.mozilla.javascript.tools.shell.Main.exec(args); | CODE |
| CRITICAL | tests/testsrc/tests/shell.js | 859 | return Packages.com.netscape.javascript.Context.getCurrentContext(); | CODE |
| CRITICAL⚡ | tests/testsrc/tests/lc3/ConvertNull/null-004-n.js | 27 | DESCRIPTION = "Packages.com.netscape.javascript.qa.lc3.jsnull.Null_001.staticAmbiguous(null)"; | CODE |
| CRITICAL⚡ | tests/testsrc/tests/lc3/ConvertNull/null-004-n.js | 31 | "Packages.com.netscape.javascript.qa.lc3.jsnull.Null_001.staticAmbiguous(null)", | CODE |
| CRITICAL⚡ | tests/testsrc/tests/lc3/ConvertNull/null-004-n.js | 33 | Packages.com.netscape.javascript.qa.lc3.jsnull.Null_001.staticAmbiguous(null) ); | CODE |
| CRITICAL | tests/testsrc/tests/lc3/JavaClass/ToJSObject-001.js | 38 | Packages.com.netscape.javascript.qa.liveconnect.JSObjectConversion(); | CODE |
| CRITICAL | tests/testsrc/tests/lc3/ArrayMethods/object-001.js | 19 | dt = new Packages.com.netscape.javascript.qa.liveconnect.DataTypeClass(); | CODE |
| CRITICAL | tests/testsrc/tests/lc3/ArrayMethods/object-001.js | 26 | "dt = new Packages.com.netscape.javascript.qa.liveconnect.DataTypeClass(); "+ | CODE |
| CRITICAL | tests/testsrc/tests/lc3/Exceptions/throw_js_types.js | 37 | exception = Packages.com.netscape.javascript.qa.liveconnect.JSObjectEval.eval(this, "throw 'foo';"); | CODE |
| CRITICAL | tests/testsrc/tests/lc3/Exceptions/throw_js_types.js | 58 | exception = Packages.com.netscape.javascript.qa.liveconnect.JSObjectEval.eval(this, "throw 42;"); | CODE |
| CRITICAL | tests/testsrc/tests/lc3/Exceptions/throw_js_types.js | 79 | exception = Packages.com.netscape.javascript.qa.liveconnect.JSObjectEval.eval(this, "throw 4.2;"); | CODE |
| CRITICAL | tests/testsrc/tests/lc3/Exceptions/throw_js_types.js | 100 | exception = Packages.com.netscape.javascript.qa.liveconnect.JSObjectEval.eval(this, "throw false;"); | CODE |
| CRITICAL | tests/testsrc/tests/lc3/Exceptions/throw_js_types.js | 121 | exception = Packages.com.netscape.javascript.qa.liveconnect.JSObjectEval.eval(this, "throw {a:5};"); | CODE |
| CRITICAL | tests/testsrc/tests/lc3/Exceptions/throw_js_types.js | 141 | exception = Packages.com.netscape.javascript.qa.liveconnect.JSObjectEval.eval(this, "throw new Date();"); | CODE |
| CRITICAL | tests/testsrc/tests/lc3/Exceptions/throw_js_types.js | 161 | exception = Packages.com.netscape.javascript.qa.liveconnect.JSObjectEval.eval(this, "throw new String();"); | CODE |
| CRITICAL | tests/testsrc/tests/lc3/Exceptions/throw_js_types.js | 181 | exception = Packages.com.netscape.javascript.qa.liveconnect.JSObjectEval.eval(this, "throw undefined"); | CODE |
| CRITICAL | tests/testsrc/tests/lc3/Exceptions/throw_js_types.js | 201 | exception = Packages.com.netscape.javascript.qa.liveconnect.JSObjectEval.eval(this, "throw null;"); | CODE |
| CRITICAL | tests/testsrc/tests/lc3/JSObject/ToJSObject-001.js | 34 | var jsoc = new Packages.com.netscape.javascript.qa.liveconnect.JSObjectConversion(); | CODE |
| CRITICAL | tests/testsrc/tests/ecma/shell.js | 540 | return Packages.com.netscape.javascript.Context.getCurrentContext(); | CODE |
| CRITICAL | tests/testsrc/tests/js1_5/Scope/regress-181834.js | 123 | var cx = this.Packages.org.mozilla.javascript.Context.getCurrentContext(); | CODE |
| CRITICAL | tests/testsrc/tests/js1_2/jsref.js | 193 | return Packages.com.netscape.javascript.Context.getCurrentContext(); | CODE |
| CRITICAL | …va/org/mozilla/javascript/tests/ErrorHandlingTest.java | 35 | // org.mozilla.javascript.tests.ErrorHandlingTest.generateJavaError(ErrorHandlingTest.java:30)' | COMMENT |
| CRITICAL | …va/org/mozilla/javascript/tests/ErrorHandlingTest.java | 93 | "org.mozilla.javascript.tests.ErrorHandlingTest.generateJavaError()", | CODE |
| CRITICAL | …va/org/mozilla/javascript/tests/ErrorHandlingTest.java | 104 | "try { org.mozilla.javascript.tests.ErrorHandlingTest.generateJavaError() } catch (e) { throw e }", | CODE |
| CRITICAL⚡ | …st/java/org/mozilla/javascript/tests/OverloadTest.java | 33 | assertEvaluates("map", "String(org.mozilla.javascript.tests.OverloadTest.x({}));"); | CODE |
| CRITICAL⚡ | …st/java/org/mozilla/javascript/tests/OverloadTest.java | 36 | "String(org.mozilla.javascript.tests.OverloadTest.x({ run: function() {} }));"); | CODE |
| CRITICAL⚡ | …st/java/org/mozilla/javascript/tests/OverloadTest.java | 41 | assertEvaluates("collection", "String(org.mozilla.javascript.tests.OverloadTest.x([]));"); | CODE |
| CRITICAL⚡ | …st/java/org/mozilla/javascript/tests/OverloadTest.java | 48 | "String(org.mozilla.javascript.tests.OverloadTest.x(function() {}));"); | CODE |
| CRITICAL | …org/mozilla/javascript/tests/InterfaceAdapterTest.java | 112 | "org.mozilla.javascript.tests.InterfaceAdapterTest.receiveEmptyInterface(a => a);\n" | CODE |
| CRITICAL | …org/mozilla/javascript/tests/InterfaceAdapterTest.java | 128 | "org.mozilla.javascript.tests.InterfaceAdapterTest.receiveOneMethodInterface(() => 'ok');"; | CODE |
| CRITICAL | …org/mozilla/javascript/tests/InterfaceAdapterTest.java | 143 | "org.mozilla.javascript.tests.InterfaceAdapterTest.receiveTwoMethodsInterface(a => a);\n" | CODE |
| CRITICAL | …org/mozilla/javascript/tests/InterfaceAdapterTest.java | 157 | "org.mozilla.javascript.tests.InterfaceAdapterTest.receiveTwoMethodsWithExtendsInterface(a => a);\n" | CODE |
| CRITICAL | …org/mozilla/javascript/tests/InterfaceAdapterTest.java | 175 | "org.mozilla.javascript.tests.InterfaceAdapterTest.receiveOneDefaultMethodInterface(() => 'ok');"; | CODE |
| CRITICAL | …org/mozilla/javascript/tests/InterfaceAdapterTest.java | 190 | "org.mozilla.javascript.tests.InterfaceAdapterTest.receiveTwoDefaultMethodsInterface(a => a);\n" | CODE |
| CRITICAL | …org/mozilla/javascript/tests/InterfaceAdapterTest.java | 213 | "org.mozilla.javascript.tests.InterfaceAdapterTest.receiveTwoSameNameDefaultMethodsInterface(i => 'ok,' | CODE |
| CRITICAL | …org/mozilla/javascript/tests/InterfaceAdapterTest.java | 233 | "org.mozilla.javascript.tests.InterfaceAdapterTest.receiveOneAbstructOneDefaultSameNameMethodInterface(i | CODE |
| CRITICAL | …org/mozilla/javascript/tests/InterfaceAdapterTest.java | 249 | "org.mozilla.javascript.tests.InterfaceAdapterTest.receiveAddDefaultMethodWithExtendsInterface(() => 'ok | CODE |
| CRITICAL | …src/main/java/org/mozilla/javascript/NativeString.java | 1252 | * href="https://www.ecma-international.org/ecma-262/8.0/#sec-string.prototype.padstart">21.1.3.14String.prototy | COMMENT |
| CRITICAL | …src/main/java/org/mozilla/javascript/NativeString.java | 1255 | * href="https://www.ecma-international.org/ecma-262/8.0/#sec-string.prototype.padend">21.1.3.13String.prototype | COMMENT |
| CRITICAL | rhino/src/main/java/org/mozilla/javascript/Node.java | 789 | // rv |= n.next.first.next.first.endCheck(); | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …ts/testsrc/tests/js1_8/extensions/regress-476414-02.js | 16 | function whatToTestSpidermonkeyTrunk(code) | CODE |
| LOW | …ts/testsrc/tests/js1_8/extensions/regress-476414-01.js | 16 | function whatToTestSpidermonkeyTrunk(code) | CODE |
| LOW | …stsrc/tests/e4x/decompilation/decompile-xml-escapes.js | 22 | function assertCorrectDecompilation(xmlInitializer) | CODE |
| LOW⚡ | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 1577 | function testSetPropNeitherMissNorHit() { | CODE |
| LOW⚡ | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 1584 | function testPrimitiveConstructorPrototype() { | CODE |
| LOW⚡ | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 1593 | function testSideExitInConstructor() { | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 779 | function shapelessUnknownCalleeLoop(n, f, g, h, a) | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 1175 | function testBranchingUnstableLoop() { | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 1188 | function testBranchingUnstableLoopCounter() { | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 1202 | function testBranchingUnstableObject() { | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 1760 | function innerTestInnerMissingArgs(a,b,c,d) | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 2160 | function testSlowArrayPopMultiFrame() { | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 2188 | function testSlowArrayPopNestedTrees() { | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 2328 | function testForInLoopChangeIteratorType() { | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 2463 | function testBoxDoubleWithDoubleSizedInt() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 3797 | function testInvertNullAfterNegateNull() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 3834 | function testAddAnyInconvertibleObject() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 3871 | function testAddInconvertibleObjectAny() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 3914 | function testAddInconvertibleObjectInconvertibleObject() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 3956 | function testBitOrAnyInconvertibleObject() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 3993 | function testBitOrInconvertibleObjectAny() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 4030 | function testBitOrInconvertibleObjectInconvertibleObject() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 4072 | function testCaseTypeMismatchBadness() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 4181 | function testLetWithUnstableGlobal() { | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 4394 | function testThrowingObjectEqUndefined() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 4415 | function testConvertibleObjectEqUndefined() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 4447 | function testUndefinedPropertyAccess() { | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 4527 | function testToStringBeforeValueOf() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 4623 | function testNestedEscapingLambdas() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 4806 | function testChangingObjectWithLength() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 4979 | function testNewWithNonNativeProto() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 4995 | function testLengthOnNonNativeProto() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 5017 | function testDeepPropertyShadowing() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 5036 | function testGlobalShapeChangeAfterDeepBail() { | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 5053 | function testFunctionIdentityChange() | CODE |
| LOW | tests/testsrc/tests/js1_8_1/trace/trace-test.js | 5228 | function testStringConstructorWithExtraArg() { | CODE |
| LOW | tests/testsrc/tests/js1_2/Array/splice2.js | 60 | function exhaustiveSpliceTestWithArgs(testname, testArray) | CODE |
| LOW | tests/testsrc/tests/js1_2/String/slice.js | 60 | function exhaustiveStringSliceTest(testname, a) | CODE |
| LOW⚡ | tests/testsrc/jstests/typedarray-helpers.js | 56 | function CreateResizableArrayBuffer(byteLength, maxByteLength) { | CODE |
| LOW⚡ | tests/testsrc/jstests/typedarray-helpers.js | 61 | function CreateGrowableSharedArrayBuffer(byteLength, maxByteLength) { | CODE |
| LOW⚡ | tests/testsrc/jstests/typedarray-helpers.js | 66 | function CreateResizableArrayBufferViaWasm(initial, maximum) { | CODE |
| LOW⚡ | tests/testsrc/jstests/typedarray-helpers.js | 73 | function CreateGrowableSharedArrayBufferViaWasm(initial, maximum) { | CODE |
| LOW | tests/testsrc/jstests/typedarray-helpers.js | 84 | function AllBigIntMatchedCtorCombinations(test) { | CODE |
| LOW | tests/testsrc/jstests/typedarray-helpers.js | 95 | function AllBigIntUnmatchedCtorCombinations(test) { | CODE |
| LOW | tests/testsrc/jstests/typedarray-helpers.js | 141 | function ValuesFromTypedArrayEntries(ta) { | CODE |
| LOW | tests/testsrc/jstests/typedarray-helpers.js | 173 | function ValuesFromTypedArrayValues(ta) { | CODE |
| LOW | tests/testsrc/jstests/typedarray-helpers.js | 215 | function TypedArrayFindIndexHelper(ta, p) { | CODE |
| LOW | tests/testsrc/jstests/typedarray-helpers.js | 227 | function TypedArrayFindLastIndexHelper(ta, p) { | CODE |
| LOW | tests/testsrc/jstests/typedarray-helpers.js | 277 | function TypedArrayLastIndexOfHelper(ta, n, fromIndex) { | CODE |
| LOW | tests/testsrc/jstests/typedarray-helpers.js | 322 | function testDataViewMethodsUpToSize(view, bufferSize) { | CODE |
| LOW | tests/testsrc/jstests/typedarray-helpers.js | 343 | function assertAllDataViewMethodsThrow(view, index, errorType) { | CODE |
| LOW | tests/testsrc/jstests/typedarray-helpers.js | 362 | function ObjectDefinePropertyHelper(ta, index, value) { | CODE |
| LOW | tests/testsrc/jstests/typedarray-helpers.js | 373 | function ObjectDefinePropertiesHelper(ta, index, value) { | CODE |
| LOW | tests/testsrc/jstests/typedarray-helpers.js | 407 | function AssertAtomicsOperationsThrow(ta, index, error) { | CODE |
| LOW | tests/testsrc/jstests/redefined-undefined.js | 3 | (function testRedefineUndefinedInAFunction() { | CODE |
| LOW | tests/testsrc/jstests/redefined-undefined.js | 36 | (function undefinedAsCatchExpression() { | CODE |
| LOW | tests/testsrc/jstests/redefined-undefined.js | 52 | (function undefinedViaDefinePropertyIsIgnored() { | CODE |
| LOW | tests/testsrc/jstests/replace-prototype.js | 39 | function replacePropertyWithGetter(obj, name) { | CODE |
| LOW | tests/testsrc/jstests/es2020/string-match-all.js | 33 | (function matchingEmptyStringDoesNotResultInInfiniteLoop() { | CODE |
| LOW | tests/testsrc/jstests/es2020/string-match-all.js | 53 | (function stringMatchAllCalledWithNonGlobalRegExp() { | CODE |
| 203 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …mozilla/javascript/tools/shell/JavaPolicySecurity.java | 221 | } | COMMENT |
| LOW | tests/testsrc/assert.js | 1 | // Copyright 2008 the V8 project authors. All rights reserved. | COMMENT |
| LOW | tests/testsrc/assert.js | 61 | // The found object is an Array with the same length and elements | COMMENT |
| LOW | tests/testsrc/assert.js | 81 | COMMENT | |
| LOW | tests/testsrc/tests/runRhinoTests.pl | 1 | #!/usr/bin/perl5 | COMMENT |
| LOW | tests/testsrc/tests/runRhinoTests.pl | 21 | # | COMMENT |
| LOW | tests/testsrc/tests/get-universe.sh | 1 | #!/bin/bash -e | COMMENT |
| LOW | tests/testsrc/tests/changes.sh | 1 | #!/bin/bash | COMMENT |
| LOW | tests/testsrc/tests/pattern-expander.pl | 1 | #!/usr/bin/perl -w | COMMENT |
| LOW | tests/testsrc/tests/mkhtml.pl | 1 | #!/ns/tools/bin/perl5 | COMMENT |
| LOW | tests/testsrc/tests/pattern-extracter.pl | 1 | #!/usr/bin/perl -w | COMMENT |
| LOW | tests/testsrc/tests/jsDriver.pl | 1101 | COMMENT | |
| LOW | tests/testsrc/tests/post-process-logs.pl | 161 | COMMENT | |
| LOW | tests/testsrc/tests/mklistpage.pl | 1 | #!/usr/bin/perl | COMMENT |
| LOW | tests/testsrc/tests/mklistpage.pl | 301 | # to include all test files under the specified directory | COMMENT |
| LOW | tests/testsrc/tests/runtests.pl | 1 | #!/usr/bin/perl5 | COMMENT |
| LOW | tests/testsrc/tests/runtests.pl | 21 | # | COMMENT |
| LOW | …ts/testsrc/tests/js1_8_1/regress/regress-452498-053.js | 21 | printBugNumber(BUGNUMBER); | COMMENT |
| LOW | …ts/testsrc/tests/js1_8_1/regress/regress-452498-051.js | 21 | printBugNumber(BUGNUMBER); | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-3.js | 161 | u[1] = c; | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-3.js | 261 | // Range: U+0B80 to U+0BFF | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-3.js | 301 | COMMENT | |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-3.js | 321 | // Range: U+20D0 to U+20FF | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-3.js | 341 | COMMENT | |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-3.js | 361 | // Range: U+2700 to U+27BF | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-3.js | 381 | COMMENT | |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-3.js | 401 | // Range: U+E000 to U+F8FF | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-4.js | 261 | // Tamil | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-4.js | 301 | } | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-4.js | 321 | // Combining Diacritical Marks for Symbols | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-4.js | 341 | // Range: U+2400 to U+243F | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-4.js | 361 | // Dingbats | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-4.js | 381 | COMMENT | |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-4.js | 401 | // Private Use Area | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-1.js | 261 | // Oriya | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-1.js | 321 | COMMENT | |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-1.js | 341 | COMMENT | |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-1.js | 361 | // Range: U+25A0 to U+25FF | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-1.js | 381 | // Hangul Compatibility Jamo | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-1.js | 401 | // Range: U+DB80 to U+DBFF | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-6.js | 241 | // Devanagari | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-6.js | 261 | COMMENT | |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-6.js | 301 | return u; | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-6.js | 321 | COMMENT | |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-6.js | 341 | // Control Pictures | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-6.js | 361 | COMMENT | |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-6.js | 381 | // Range: U+3190 to U+319F | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-6.js | 401 | COMMENT | |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-2.js | 261 | // Tamil | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-2.js | 301 | } | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-2.js | 321 | // Combining Diacritical Marks for Symbols | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-2.js | 341 | // Range: U+2400 to U+243F | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-2.js | 361 | // Dingbats | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-2.js | 381 | COMMENT | |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.11-2.js | 401 | // Private Use Area | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-5.js | 261 | // Tamil | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-5.js | 301 | } | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-5.js | 321 | // Combining Diacritical Marks for Symbols | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-5.js | 341 | // Range: U+2400 to U+243F | COMMENT |
| LOW | tests/testsrc/tests/ecma/String/15.5.4.12-5.js | 361 | // Dingbats | COMMENT |
| 112 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | rhino/src/main/java/org/mozilla/javascript/Parser.java | 2735 | if (compilerEnv.isIdeMode()) { // be robust in IDE-mode | CODE |
| MEDIUM | rhino/src/main/java/org/mozilla/javascript/Parser.java | 2800 | if (compilerEnv.isIdeMode()) { // be robust in IDE-mode | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/testsrc/tests/post-process-logs.pl | 165 | # ----------------------------- | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …src/main/java/org/mozilla/javascript/ES6Generator.java | 208 | // We need to check if the return value is present and after the call | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/testsrc/tests/e4x/TypeConversion/10.1.1.js | 33 | TEST(++n, "John Doe", name); | CODE |