This is the mail archive of the
mailing list for the GDB project.
Re: gdb/mi log stream messages
- From: Xavier de Gaye <xdegaye at gmail dot com>
- To: gdb at sourceware dot org
- Date: Thu, 8 Sep 2011 21:35:39 +0200
- Subject: Re: gdb/mi log stream messages
- References: <CAN4cRFzR_5dt0o=N9rEgVbcPcus8Uc0dcJMfqJnpkTxC8ZZ9Lw@mail.gmail.com> <email@example.com> <CAN4cRFz9N3qdw9XCu_8tXrOr+tNcxx=X4EoSALh_beSHOOgBfirstname.lastname@example.org>
On Sat, Sep 3, 2011 at 2:11 PM, Xavier de Gaye wrote:
> On Tue, Aug 30, 2011 at 10:28 PM, Tom Tromey wrote:
>>>>>>> "Xavier" == Xavier de Gaye writes:
>> Xavier> gdb version: 7.3
>> Xavier> In the second gdb/mi test of the following two tests, gdb/mi writes
>> Xavier> the "No source file named foo.c.\n" message to the log stream.
>> Xavier> The gdb/mi documentation states at section "24.4.2 GDB/MI Stream
>> Xavier> Records" that "The log stream contains debugging messages being
>> Xavier> produced by GDB's internals.". The above message is not a debugging
>> Xavier> message. So, is the gdb/mi documentation wrong, or should this message
>> Xavier> be written to the console output stream instead, or am I missing
>> Xavier> something else ?
>> I tend to think it should be written to the console output stream.
> The above gdb/mi log stream message is written by the statement
> "exception_print (gdb_stderr, e)" in create_breakpoint().
> The function mi_interpreter_init() creates the mi output streams:
> ?/* Create MI channels */
> ?mi->out = mi_console_file_new (raw_stdout, "~", '"');
> ?mi->err = mi_console_file_new (raw_stdout, "&", '"');
> ?mi->log = mi->err;
> The function mi_interpreter_resume() maps the gdb streams to the mi
> ?gdb_stdout = mi->out;
> ?/* Route error and log output through the MI */
> ?gdb_stderr = mi->err;
> ?gdb_stdlog = mi->log;
> Since mi->err and mi->log are the same stream, it seems that gdb/mi
> writes gdb_stdlog debugging messages and gdb_stderr error messages to
> the same stream, which would explain this problem.
I have entered this problem as bug 13170 in the bug database.
FWIW messages printed by the warning() function are also written to
gdb/mi debugging messages log stream.