This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFA] Fix frame argument printing when using auto language mode
- From: Yao Qi <qiyaoltc at gmail dot com>
- To: Xavier Roirand <roirand at adacore dot com>
- Cc: GDB Patches <gdb-patches at sourceware dot org>, Joel Brobecker <brobecker at adacore dot com>
- Date: Tue, 20 Feb 2018 15:15:10 +0000
- Subject: Re: [RFA] Fix frame argument printing when using auto language mode
- Authentication-results: sourceware.org; auth=none
- References: <1519044767-8741-1-git-send-email-roirand@adacore.com>
On Mon, Feb 19, 2018 at 12:52 PM, Xavier Roirand <roirand@adacore.com> wrote:
>
> The problem is that GDB prints the S parameter in the pck.call_me Ada
> function using the current language, so the C one, because the program
> is stopped in a C function, whereas it should use the pck.call_me frame
> one. This behavior is ok when user manually changes the language but it's
> not the right one when language is auto.
Agreed, GDB should use per-frame language instead of global current
language. However, instead of switching global variable current_language,
why don't we pass the per-frame language down to la_val_print? In
ada-valprint.c:ada_val_print,
ada_val_print_1 (type, embedded_offset, address,
stream, recurse, val, options,
current_language);
^^^^^^^^^^^^^^^^^
why don't pass language for ada here?
--
Yao (齐尧)