Previous: GDB/MI Input Syntax, Up: GDB/MI Command Syntax
The output from gdb/mi consists of zero or more out-of-band records followed, optionally, by a single result record. This result record is for the most recent command. The sequence of output records is terminated by `(gdb)'.
If an input command was prefixed with a token then the corresponding output for that command will also be prefixed by that same token.
==>( out-of-band-record )* [ result-record ] "(gdb)" nl
==> [ token ] "^" result-class ( "," result )* nl
==> | stream-record
==> | status-async-output | notify-async-output
==>[ token ] "*" async-output
==>[ token ] "+" async-output
==>[ token ] "=" async-output
==> ( "," result )* nl
==>"done" | "running" | "connected" | "error" | "exit"
==>"stopped" | others (where others will be added
depending on the needs—this is still in development).
==> "=" value
==> ==> | tuple | list
==> ==> "{}" | "{" result ( "," result )* "}"
==> "[]" | "[" value ( "," value )* "]" | "["
result ( "," result )* "]"
==> | target-stream-output | log-stream-output
==>"~" c-string
==>"@" c-string
==>"&" c-string
==>CR | CR-LF
==>Notes:
See gdb/mi Stream Records, for more details about the various output records.