1) extend ContextSelector interface to allow it to specify parameters of interest
2) extend filtering mechanism at call sites to allow CPA-style filtering when requested by contexts
3) various related fixes and extensions:
a) removed redundant code to handle dispatch for JavaScript, so now it shares the core mechanism
b) tighten types for operators that take an array of args - now the array is T[] at the cost of a few array allocation methods
c) a bit more support for empty int sets
d) void function objects
e) bug fixes for lexical scoping support, and adaptation to work with core dispatch mechanism
f) example of CPA-style sensitivity to handle nastiness in a JavaScript for(.. in ...) loop
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4150 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
other minor changes:
TypeInference:
1) fix to handle constant that is the last value number
2) add visitor to set result of instanceof to boolean if doPrimitives
3) PrimitivePropagateOperator not final to allow specialization
PrimitiveType:
mimic Java semantics for implicit upcasts: add notion of size and
define meet to take larger size
SSASwitchInstruction:
add iterator for switch labels
cfg.Util:
add more helpers for dealing with switches
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@838 f5eafffb-2e1d-0410-98e4-8ec43c5233c4