+ All Categories
Home > Documents > Goal-Directed Abstract Interpretation for JavaScript

Goal-Directed Abstract Interpretation for JavaScript

Date post: 06-Apr-2022
Category:
Upload: others
View: 11 times
Download: 0 times
Share this document with a friend
1
Goal-Directed Abstract Interpretation for JavaScript prop o[prop] var o = {foo : function(){…}, bar : function(){…}, baz : function() {… ; throw ‘error’;} }; var prop = someFunction(); o[prop](); source program Heuristically suspicious abstract state Potential Refutation Type Analyzer for JavaScript (TAJS) ThresherJS: Goal-Directed Abstract Interpretation ≠ො Over-approximation in someFunction causes analysis to infer as prop’s value Spurious call edges!
Transcript
Page 1: Goal-Directed Abstract Interpretation for JavaScript

Goal-Directed Abstract Interpretation for JavaScript

prop

o[prop]

var o = {foo : function(){…},

bar : function(){…},

baz : function()

{… ; throw ‘error’;} };

var prop = someFunction();

o[prop]();

sourceprogram

Heuristically suspicious

abstract state

Potential Refutation

Type Analyzer for

JavaScript (TAJS)

ThresherJS: Goal-Directed

Abstract Interpretation

ෝ𝑝 ≠ ො𝑝

Over-approximation in

someFunction causes analysis to infer ⊤ as prop’s value

Spurious call edges!

Recommended