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: MI query questions



On May 30, 2006, at 1:45 PM, Daniel Jacobowitz wrote:


On Tue, May 30, 2006 at 01:14:12PM -0700, Jim Ingham wrote:
I also like this =read-one-line thingie, because it makes it explicit
what's going on, namely something other than the MI is trying to read
one line of input.  So the FE should solicit a line of input from
whoever it's getting that from in the command that caused this
message to be delivered, and send it on...

While I agree at first look, on the other hand:


(A) It messes up pipelining.  You can't throw five commands at GDB at
once, if one of them might eat further input.

Yes, though another approach is to mark commands that can't safely be in the middle of a pipeline - of which there is really just one: - interpreter-exec. Then if you do pipeline those it's your own fault.


After all, I can't think of any case where a real MI command has any business prompting for more info, and I don't think we would want to make that an available mode for MI commands. I think for the MI itself it's much better to have them do their job atomically... So the issue only arises when you are passing control to another interpreter, and waiting till that has given control back before issuing more commands seems the safe thing to do.


(B) It makes parsing the output somewhat trickier.


Would it be helpful to have some general solution for this, presumably
involving completions (i.e. closures)? Come back and answer the prompt
when you're ready?

This would probably be nicer, though I'm not sure it's worth the effort unless there are other places where we can forsee using this beyond -interpreter-exec.


Jim


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