Index: test/mjsunit/regress/regress-crbug-424142.js |
diff --git a/test/mjsunit/regress/regress-crbug-424142.js b/test/mjsunit/regress/regress-crbug-424142.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..0a370d414269062ff9dabae4e09e4e7a2e77ea13 |
--- /dev/null |
+++ b/test/mjsunit/regress/regress-crbug-424142.js |
@@ -0,0 +1,36 @@ |
+// Copyright 2014 the V8 project authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+// Flags: --expose-debug-as debug |
+ |
+(function outer() { |
+ var C = (function C_() { |
+ var y = 1; |
+ function CC() { |
+ this.x = 0; |
+ } |
+ CC.prototype.f = function CCf() { |
+ this.x += y; |
+ return this.x; |
+ }; |
+ return CC; |
+ })(); |
+ |
+ var c = new C(0); |
+}) |
+ |
+function sentinel() {} |
+ |
+Debug = debug.Debug; |
+ |
+var script = Debug.findScript(sentinel); |
+var line = 14; |
+var line_start = Debug.findScriptSourcePosition(script, line, 0); |
+var line_end = Debug.findScriptSourcePosition(script, line + 1, 0) - 1; |
+var actual = Debug.setBreakPointByScriptIdAndPosition( |
+ script.id, line_start).actual_position; |
+// Make sure the actual break position is within the line where we set |
+// the break point. |
+assertTrue(line_start <= actual); |
+assertTrue(actual <= line_end); |