[RFA] Fix frame argument printing when using auto language mode

Yao Qi qiyaoltc@gmail.com
Tue Feb 20 15:15:00 GMT 2018


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 (齐尧)



More information about the Gdb-patches mailing list