How to compare $arg0 with string literal?

Aleksey Midenkov midenok@gmail.com
Fri Mar 27 06:35:00 GMT 2015


On Thu, Mar 26, 2015 at 9:28 PM, Doug Evans <dje@google.com> wrote:
> Such things are not supported in gdb's own scripting language.
> However, with a bit of Python-provided magic ($_streq):
>
> define logging
>     if $argc == 1
>         if $_streq("$arg0", "off")
>             set logging off
>             set logging file gdb.log
>         else
>             if $_streq("$arg0", "stop")
>                 set logging off
>             else
>                 set logging $arg0
>             end
>         end
>     else
>         set logging $arg0 $arg1
>     end
>     show logging
> end
>
> Note that gdb's if/else syntax is a pain.

Sure thing, gdb's syntax could be a bit richer... Also, if I get this
error message does that mean that my gdb is not Python-powered?

(gdb)  p $_streq("off", "off")
Invalid data type for function to be called.



More information about the Gdb mailing list