www.delorie.com/gnu/docs/gdb/gdb_218.html   search  
 
Buy the book!


Debugging with GDB

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

24.1.2 GDB/MI Output 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.

output ==>
( out-of-band-record )* [ result-record ] "(gdb)" nl

result-record ==>
[ token ] "^" result-class ( "," result )* nl

out-of-band-record ==>
async-record | stream-record

async-record ==>
exec-async-output | status-async-output | notify-async-output

exec-async-output ==>
[ token ] "*" async-output

status-async-output ==>
[ token ] "+" async-output

notify-async-output ==>
[ token ] "=" async-output

async-output ==>
async-class ( "," result )* nl

result-class ==>
"done" | "running" | "connected" | "error" | "exit"

async-class ==>
"stopped" | others (where others will be added depending on the needs--this is still in development).

result ==>
variable "=" value

variable ==>
string

value ==>
const | tuple | list

const ==>
c-string

tuple ==>
"{}" | "{" result ( "," result )* "}"

list ==>
"[]" | "[" value ( "," value )* "]" | "[" result ( "," result )* "]"

stream-record ==>
console-stream-output | target-stream-output | log-stream-output

console-stream-output ==>
"~" c-string

target-stream-output ==>
"@" c-string

log-stream-output ==>
"&" c-string

nl ==>
CR | CR-LF

token ==>
any sequence of digits.

Notes:

See section GDB/MI Stream Records, for more details about the various output records.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

  webmaster     delorie software   privacy  
  Copyright 2003   by The Free Software Foundation     Updated Jun 2003