Consider these two functions:
’ foo1
[1] 0 0½0
[2] 3+4
’
’ foo2
[1] 0 0½0
[2] 3+
’
Put a stop on line [1] of both functions.
Run foo1. It stops on [1]. Press F10. It runs line [1] and then stops on [2] (as it should).
Run foo2. It stops on [1]. Press F10. It runs line [1] but it does NOT stop on [2], but immediately signals SYNTAX ERROR on [2]. I don't think this is correct -- it should have stopped before trying to execute line [2].
Interestingly, if you ALSO put a stop on line [2], foo2 DOES stop before executing line [2] when you single-step with F10. But it shouldn't matter whether you have a stop or not on line [2]; F10 should single-step and stop BEFORE a line is executed.