<script>
function test()
{
    debugger;
}

for (var i = 0; i < 1; ++i)
    test();
</script>

Test for <a href="https://bugs.webkit.org/show_bug.cgi?id=22004">Bug 22004: Can't set a breakpoint on the statement after a single line "for"</a>.
<br><br>
Start a debugging session in the Web Inspector and open this file. When the debugger breaks, select the (program) node
in the call stack, you should see the execution line on the call to test().
<br><br>
Also set a breakpoint on the call to test(), and reload. It should break before the test() function is called.
