AccessorEmitter: similar to static accessors, instance accessors are written as a variable first

As with statics, this is because Closure compiler doesn't know how to properly analyze defineProperties() calls and assumes that getters/setters have no side effects. Declaring them as a variable first ensures that Closure understands that changes are possible.

This will eventually allow accessors to be safely renamed with advanced optimizations enabled.
10 files changed