gdb: GDB/MI Stream Records
27.5.2 GDB/MI Stream Records
----------------------------
GDB internally maintains a number of output streams: the console, the
target, and the log. The output intended for each of these streams is
funneled through the GDB/MI interface using "stream records".
Each stream record begins with a unique "prefix character" which
identifies its stream (GDB/MI Output Syntax GDB/MI Output
Syntax.). In addition to the prefix, each stream record contains a
'STRING-OUTPUT'. This is either raw text (with an implicit new line) or
a quoted C string (which does not contain an implicit newline).
'"~" STRING-OUTPUT'
The console output stream contains text that should be displayed in
the CLI console window. It contains the textual responses to CLI
commands.
'"@" STRING-OUTPUT'
The target output stream contains any textual output from the
running target. This is only present when GDB's event loop is
truly asynchronous, which is currently only the case for remote
targets.
'"&" STRING-OUTPUT'
The log stream contains debugging messages being produced by GDB's
internals.