Added new scope type ScopeIterator::ScopeTypeCatch for with generated from catch...
authoryurys@chromium.org <yurys@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Tue, 8 Sep 2009 10:20:28 +0000 (10:20 +0000)
committeryurys@chromium.org <yurys@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Tue, 8 Sep 2009 10:20:28 +0000 (10:20 +0000)
commitae062d5df1732e6a3b36fa8e137dd90ed23057c7
treea10461c502f6ec4081b5b64d69bf71c58bb873d9
parent2edebc2c9cd41ed068c460428b04b861a185b909
Added new scope type ScopeIterator::ScopeTypeCatch for with generated from catch blocks.

Removed a false assertion in ScopeIterator that assumed context extension to never be a JSContextExtensionObject.

The context extension object in a 'with' context is JSContextExtensionObject iff the 'with' statement is generated from a catch block in order to extend its local scope with a variable holding exception object. This is how we differentiate 'catch' scope from 'with' scope.

Chrome bug:
http://code.google.com/p/chromium/issues/detail?id=17229
Review URL: http://codereview.chromium.org/202005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2843 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
src/d8.js
src/mirror-delay.js
src/runtime.cc
test/mjsunit/debug-scopes.js