/* /nodynamiccopyright/ */ // DO NOT DELETE ANY LINES!!!!
// THIS TEST IS LINE NUMBER SENSITIVE
/**
* @test
* @bug 4530424
* @summary Hin says that doing a step over after a popframe acts like a resume.
*
* @author jjh
*
* @library ..
* @run build TestScaffold VMConnection TargetListener TargetAdapter
* @run compile -g PopAndStepTest.java
* @run main PopAndStepTest
*/
/********** LINE NUMBER SENSITIVE! *****************************************************************/
class PopAndStepTarg {
public void B() {
}
public void A() {
B();
throw new RuntimeException("debuggee: Got to line 33");
}
xxx.A(); // line 40
}
}
/********** test program **********/
super(args);
}
}
return frame;
}
}
return null;
}
return -1;
}
if (expectedLine != theLine) {
} else {
}
return theLine;
}
println("Got VMDeathEvent");
}
println("Got VMDisconnectEvent");
}
/********** test core **********/
/*
* Get to the top of main()
* to determine targetClass and mainThread
*/
runOnce();
}
/*
* Get to the top of main()
* to determine targetClass and mainThread
*/
getDebuggeeLineNum(37);
println("Resuming to line 26");
// The failure is this:
// create step request
// enable step request
// pop frame
// do the step
// do another step - This step runs to completion
//srInto.enable(); // if the enable is moved here, it passes
println("Popped back to line 40 in main, the call to A()");
println("Stepping into line 30");
getDebuggeeLineNum(30);
// The failure occurs here.
println("Stepping over to line 31");
getDebuggeeLineNum(31);
println("Stepping over to line 32");
getDebuggeeLineNum(32);
if (testFailed) {
throw new Exception("PopAndStepTest failed");
}
println("Passed:");
}
}