This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Query regarding GDB-Mi interface


Pankaj Pal wrote:

> We have a debugging front end which uses gdb-6.6 We were using
> annotations till now but
>  as annotations have been made obsolete we are shifting to MI
> interpreter. I have a few queries regarding MI.
> 
> 1) Why few commands are still un implemented like attach, 

Because you are using gdb-6.6. The -target-attach command is implemented
in CVS HEAD.

> info program 
> etc. Is there any plan to support them.

I don't have any plan to implement MI version of "info program", in part
because I never heard about this command. Why do you need it?

>  2) Is there any way to stop the MI interpreter like we have with
> annotations (set annotate 0 whenever we wish to do so).

What do you mean "stop"? GDB will always accept MI commands, and output
MI outputs if you've started it in MI mode.

>  3) We need 'info line *addr' command when we are shifting to MI from
> annotations. I have been doing few changes in
>       the gdb source code to get this information (source file and line
> number), however annotations have this information.
>       I would like to know is there any known issue due to which this
> command has not been implemented.

You can use "info line *addr" just fine, even in MI mode.

> 4) In the gdb manual I can see that 'call' command in gdb is equivalent
> to '-data-evaluate-expression' in MI. But with
>     annotations, the 'call' command sequence is as follows ::
>     ^z^z starting
>     --->> do the call command functionality
>    ^z^z stopped
> 
>    However, with MI, we are not getting the 'running' and 'stopped' tokens.

This is by design, at least for now. Emitting *stopped for calling functions in
inferiour might cause the frontend to reload program state again, which will
cause expressions with functions calls to be reevaluated, which will cause
further *stop, etc. Why is this information necessary for you? Note that I've
posted a patch to optionally enable running/stopped notification for function
calls, I just did not press it further due to lack of support.

- Volodya



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]