Repository navigation
Commit fda35fc
JS: Complete migration to shared SSA
Use shared SSA for definitions, refinements, captures, and local/global data flow. Remove JavaScript's separate liveness, phi insertion, and reaching-definition computation while preserving its public SSA APIs as shared-backed adapters.
Keep global continuing-value reads distinct from expression occurrences, preserve captured-variable and legacy Configuration guard behavior, and restrict reflective with-read shortcuts to type inference.
Propagate post-updates after operation completion and preserve updates across value-preserving reassignments using the existing modeled may-value flow.
Update test expectations and the change note. Keep known baseline clone and short-circuit false positives marked SPURIOUS.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>1 parent 6d15e51 commit fda35fc
47 files changed
Lines changed: 1413 additions & 1337 deletions
File tree
- javascript/ql
- lib
- change-notes
- semmle/javascript
- dataflow
- internal
- src/NodeJS
- test
- library-tests
- BarrierGuardPhiInputs
- CallGraphs/FullTest
- DataFlow
- GlobalAccessPaths
- TaintTracking
- frameworks
- AngularJS/scopes
- Electron
- Express
- NodeJSLib
- ReactJS
- fastify
- hapi
- koa
- restify
- query-tests/Security
- CWE-022/TaintedPath
- CWE-078
- SecondOrderCommandInjection
- UnsafeShellCommandConstruction
- lib
- CWE-079/DomBasedXss
- CWE-089/untyped
- CWE-915/PrototypePollutingFunction
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
0 commit comments