From: Nick Roberts <nickrob@snap.net.nz>
To: Vladimir Prus <ghost@cs.msu.su>
Cc: gdb-patches@sources.redhat.com
Subject: Re: cleanup mi error message handling
Date: Mon, 31 Mar 2008 00:46:00 -0000 [thread overview]
Message-ID: <18416.13342.147430.549879@kahikatea.snap.net.nz> (raw)
In-Reply-To: <200803301005.39285.ghost@cs.msu.su>
> The only thing from you I can find is:
>
> At other times duplicated error messages are desirable, e.g.,
>
> -exec-continue
> ^running
> (gdb)
> &"The program is not being run.\n"
> ^error,msg="The program is not being run."
>
> because the first goes to the console for the user to see, the second to
> the frontend to be handled as appropriate.
>
> You still did not say why showing the error message is console is desirable.
> If -exec-continue itself is now show in the console, the error message
> makes no sense. If -exec-continue is shown, then the error message is not
> necessary. Where the flaw in this logic.
I can't understand these sentences. The command -exec-continue won't appear in
the console but "The program is not being run." will. These `errors' and other
similar ones like "No stack." are reported through error () and are normal Gdb
output for the user to see. Currently the console can display such messages by
reading LOG-STREAM-OUTPUT.
Other errors like:
(gdb)
-interpreter-exec
^error,msg="mi_cmd_interpreter_exec: Usage: -interpreter-exec interp command"
(gdb)
would be due to a frontend error, so I think it would be probably be best to
display them elsewhare, e.g., status bar.
The only way for the frontend to distinguish between the two types of error is
if the Gdb developer uses the appropriate mechanism, i.e. error () or
mi_error_message in each case.
I wouldn't make any changes until a real problem is reported (not just Pedro
tidying things up). If a change has to be made I would suggest the one below.
However this would mean going through all the errors reported in MI to work out
which ones need mi_error_message but currently use error (), e.g.,
"mi_cmd_stack_list_locals: Usage: PRINT_VALUES".
> >
> > > And if we enable logging of MI commands, user can see the
> > > information even if nothing goes to "&" channel.
> >
> > And nothing goes to the console. Same old story.
>
> Sorry, I don't understand what is "old story" and why nothing goes to
> console.
Right from when I started and there was an attempt to remove annotations,
it feels like the console has been under threat.
--
Nick http://www.inet.net.nz/~nickrob
*** mi-main.c 31 Mar 2008 12:08:10 +1200 1.110
--- mi-main.c 31 Mar 2008 12:16:01 +1200
*************** mi_execute_command (char *cmd, int from_
*** 1260,1278 ****
mi_parse_free (command);
return;
}
! if (result.reason < 0)
! {
! /* The command execution failed and error() was called
! somewhere. */
! fputs_unfiltered (command->token, raw_stdout);
! fputs_unfiltered ("^error,msg=\"", raw_stdout);
! if (result.message == NULL)
! fputs_unfiltered ("unknown error", raw_stdout);
! else
! fputstr_unfiltered (result.message, '"', raw_stdout);
! fputs_unfiltered ("\"\n", raw_stdout);
! mi_out_rewind (uiout);
! }
mi_parse_free (command);
}
--- 1260,1266 ----
mi_parse_free (command);
return;
}
!
mi_parse_free (command);
}
next prev parent reply other threads:[~2008-03-31 0:46 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-24 18:30 Pedro Alves
2008-03-24 19:08 ` Pedro Alves
2008-03-24 22:04 ` Nick Roberts
2008-03-24 22:39 ` Daniel Jacobowitz
2008-03-24 23:37 ` Nick Roberts
2008-03-25 1:00 ` Daniel Jacobowitz
2008-03-25 1:29 ` Nick Roberts
2008-03-25 2:12 ` Daniel Jacobowitz
2008-03-29 14:22 ` Vladimir Prus
2008-03-30 5:13 ` Nick Roberts
2008-03-30 6:06 ` Vladimir Prus
2008-03-31 0:46 ` Nick Roberts [this message]
2008-03-31 1:59 ` Daniel Jacobowitz
2008-03-31 2:23 ` Nick Roberts
2008-03-31 5:07 ` Vladimir Prus
2008-03-31 6:36 ` Nick Roberts
2008-03-31 7:10 ` Vladimir Prus
2008-03-31 15:17 ` Pedro Alves
2008-03-31 11:24 ` Pedro Alves
2008-04-01 2:00 ` Pedro Alves
2008-04-01 0:18 ` Pedro Alves
2008-04-01 13:17 ` Nick Roberts
2008-04-01 3:28 ` Nick Roberts
2008-03-25 3:52 ` Pedro Alves
2008-04-04 13:33 ` Vladimir Prus
2008-04-04 23:08 ` Pedro Alves
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=18416.13342.147430.549879@kahikatea.snap.net.nz \
--to=nickrob@snap.net.nz \
--cc=gdb-patches@sources.redhat.com \
--cc=ghost@cs.msu.su \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox