- Fixed a bug where it did not instrument a "for-in" loop.
- Made sure nested function declarations' bodies are
instrumented.
- Added instrumentation for return statements.
<rdar://problem/16516131>
Swift SVN r15960
- Don't be so sensitive about how many of the
required functions there are; and
- Don't include the "header" parameter to
playground_log any more; it's not needed.
Swift SVN r15755
loop constructs and mutations of variables.
We also try to ignore expressions that return
empty tuples, because this causes type-checking
failures.
Swift SVN r15568
- use the most recent prototype for the logger
function (playground_log), and
- send the output of the logger function to
DVTSendPlaygroundLogDataToHost.
Swift SVN r14892
"Playground Transform." This is an
instrumentation pass that adds calls to a
function called playground_log at locations of
interest. Roughly speaking, these locations are
- Initialization of variables
- Modification of variables
- Expressions returning values
- Application of mutating methods on objects
The playground transform currently only finds
modifications of variables, but the intent is to
make all of these cases work.
It is enabled by a frontend option, and can
also be invoked by calling
swift::performPlaygroundTransform(SF)
which is the way LLDB, its main client, will
use it.
The frontend option is intended for testing,
and indeed I will add tests for this
transformation in the coming week as I bring
more functionality online.
Swift SVN r14801