Pruner runs only once.

I know this feels a little hacky, but I tracked down most of the sources of Pruner jitter that's causing it to run more than once.

1) Instance fields needed to be treated like method and put into limbo until their enclosing type is instantiable.  This shouldn't be too controversial.

2) A big source of jitter is the fact that CleanupRefsVisitor removes non-side-effect causing arguments when the invoked parameter is pruned. Essentially, I am doing the same conceptual thing for arguments to methods as we are for methods and fields-- unless the argument expressions have side effects, they are not considered rescued until the target parameter is rescued.

http://gwt-code-reviews.appspot.com/1436802/


git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@10203 8db76d5a-ed1c-0410-87a9-c151d255dfc7
3 files changed