Wrong debugger stepping behavior

In both builds 8823 and 8858 we have been experiencing weird debugger behavior while stepping through code.
For example, we had code similar to the following:

if( !someList.contains(x) )
return false;

/* ... */
return true;

The list contained item X. We stepped through the x.equality() operator (invoked via the list.contains()), and it matched it on the first line of the equals op,returning true.
Upon return from the someList.contains(x) method, hitting F8 took us into the 'return false' line. We tried both JDK 1.6.0_10RC and 1.6.0_7GA.
Extracting the someList.contains() into a local boolean variable made everything work fine.

The exact same code ran as expected in Eclipse much to the amusement of some of my colleagues here. This is clearly a blocker.

Please sign in to leave a comment.