Version 1.2.12.

Added stack traces collection to Error objects accessible through the e.stack property.

Changed RegExp parser to use a recursive data structure instead of stack-based recursion.

Optimized Date object construction and string concatenation.

Improved performance of div, mod, and mul on ARM platforms.


git-svn-id: http://v8.googlecode.com/svn/trunk@2361 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
diff --git a/test/mjsunit/stack-traces.js b/test/mjsunit/stack-traces.js
index 6ac8b0a..e457ece 100644
--- a/test/mjsunit/stack-traces.js
+++ b/test/mjsunit/stack-traces.js
@@ -25,8 +25,6 @@
 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-Error.captureStackTraces = true;
-
 function testMethodNameInference() {
   function Foo() { }
   Foo.prototype.bar = function () { FAIL; };
@@ -75,6 +73,17 @@
   new Plonk();
 }
 
+function testRenamedMethod() {
+  function a$b$c$d() { return FAIL; }
+  function Wookie() { }
+  Wookie.prototype.d = a$b$c$d;
+  (new Wookie).d();
+}
+
+function testAnonymousMethod() {
+  (function () { FAIL }).call([1, 2, 3]);
+}
+
 // Utility function for testing that the expected strings occur
 // in the stack trace produced when running the given function.
 function testTrace(fun, expected) {
@@ -151,9 +160,11 @@
 testTrace(testMethodNameInference, ["at Foo.bar"]);
 testTrace(testImplicitConversion, ["at Nirk.valueOf"]);
 testTrace(testEval, ["at Doo (eval at testEval"]);
-testTrace(testNestedEval, ["at eval (eval at Inner (eval at Outer"]);
+testTrace(testNestedEval, ["eval at Inner (eval at Outer"]);
 testTrace(testValue, ["at Number.causeError"]);
 testTrace(testConstructor, ["new Plonk"]);
+testTrace(testRenamedMethod, ["Wookie.a$b$c$d [as d]"]);
+testTrace(testAnonymousMethod, ["Array.<anonymous>"]);
 
 testCallerCensorship();
 testUnintendedCallerCensorship();