toolchain/share/doc/gdb/GDB_002fMI-Stream-Records.html

75 lines
3.9 KiB
HTML

<html lang="en">
<head>
<title>GDB/MI Stream Records - Debugging with GDB</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Debugging with GDB">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="GDB_002fMI-Output-Records.html#GDB_002fMI-Output-Records" title="GDB/MI Output Records">
<link rel="prev" href="GDB_002fMI-Result-Records.html#GDB_002fMI-Result-Records" title="GDB/MI Result Records">
<link rel="next" href="GDB_002fMI-Async-Records.html#GDB_002fMI-Async-Records" title="GDB/MI Async Records">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
Copyright (C) 1988-2019 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``Free Software'' and ``Free Software Needs
Free Documentation'', with the Front-Cover Texts being ``A GNU Manual,''
and with the Back-Cover Texts as in (a) below.
(a) The FSF's Back-Cover Text is: ``You are free to copy and modify
this GNU Manual. Buying copies from GNU Press supports the FSF in
developing GNU and promoting software freedom.''
-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
pre.display { font-family:inherit }
pre.format { font-family:inherit }
pre.smalldisplay { font-family:inherit; font-size:smaller }
pre.smallformat { font-family:inherit; font-size:smaller }
pre.smallexample { font-size:smaller }
pre.smalllisp { font-size:smaller }
span.sc { font-variant:small-caps }
span.roman { font-family:serif; font-weight:normal; }
span.sansserif { font-family:sans-serif; font-weight:normal; }
--></style>
</head>
<body>
<div class="node">
<a name="GDB%2fMI-Stream-Records"></a>
<a name="GDB_002fMI-Stream-Records"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="GDB_002fMI-Async-Records.html#GDB_002fMI-Async-Records">GDB/MI Async Records</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="GDB_002fMI-Result-Records.html#GDB_002fMI-Result-Records">GDB/MI Result Records</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="GDB_002fMI-Output-Records.html#GDB_002fMI-Output-Records">GDB/MI Output Records</a>
<hr>
</div>
<h4 class="subsection">27.5.2 <span class="sc">gdb/mi</span> Stream Records</h4>
<p><a name="index-g_t_0040sc_007bgdb_002fmi_007d_002c-stream-records-2975"></a><a name="index-stream-records-in-_0040sc_007bgdb_002fmi_007d-2976"></a><span class="sc">gdb</span> 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 <span class="sc">gdb/mi</span> interface using <dfn>stream records</dfn>.
<p>Each stream record begins with a unique <dfn>prefix character</dfn> which
identifies its stream (see <a href="GDB_002fMI-Output-Syntax.html#GDB_002fMI-Output-Syntax"><span class="sc">gdb/mi</span> Output Syntax</a>). In addition to the prefix, each stream record contains a
<var>string-output</var>. This is either raw text (with an implicit new
line) or a quoted C string (which does not contain an implicit newline).
<dl>
<dt><code>"~" </code><var>string-output</var><dd>The console output stream contains text that should be displayed in the
CLI console window. It contains the textual responses to CLI commands.
<br><dt><code>"@" </code><var>string-output</var><dd>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.
<br><dt><code>"&amp;" </code><var>string-output</var><dd>The log stream contains debugging messages being produced by <span class="sc">gdb</span>'s
internals.
</dl>
</body></html>