This is the mail archive of the gdb-patches@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: [RFC] Fix for gdb.parameter('architecture') returning empty string


Based on Andreas Schwab's feedback, I am now printing 'big' and
'little' explicitly.

2012-10-14  Siva Chandra Reddy  <sivachandra@google.com>

        * arch-utils.c: Rename variables 'set_endian_string' and
        'set_architecture_string' to 'endian_string' and
        'architecture_string' respectively.
        (show_endian): Use 'endian_string' instead of evaluating the
        endianness from the current architecture.
        (show_architecture): Use 'architecture_string' instead of
        evaluating the architecture name from the current architecture.
        (set_endian, _initialize_gdbarch_utils): Use the new
        'endian_string' variable.
        (selected_architecture_name, set_architecture): Use the new
        'architecture_string' variable.
        (set_endian_string): New convenience function to set
        'endian_string'.
        (on_architecture_change): Callback for the architecture change
        event.
        (initialize_current_architecture): Initialize
        'architecture_string' and 'endian_string'. Attach the callback
        on_architecture_change to the architecture change observer.

testsuite/

2012-10-14  Siva Chandra Reddy  <sivachandra@google.com>

        gdb.python/py-parameter.exp: Add a new test to test
        gdb.parameter ('endian').

Thanks,
Siva Chandra

On Sun, Oct 14, 2012 at 12:53 AM, Andreas Schwab <schwab@linux-m68k.org> wrote:
> Siva Chandra <sivachandra@google.com> writes:
>
>> @@ -274,19 +275,13 @@ show_endian (struct ui_file *file, int f
>>            const char *value)
>>  {
>>    if (target_byte_order_user == BFD_ENDIAN_UNKNOWN)
>> -    if (gdbarch_byte_order (get_current_arch ()) == BFD_ENDIAN_BIG)
>>        fprintf_unfiltered (file, _("The target endianness is set automatically "
>> -                               "(currently big endian)\n"));
>> -    else
>> -      fprintf_unfiltered (file, _("The target endianness is set automatically "
>> -                               "(currently little endian)\n"));
>> +                               "(currently %s endian)\n"),
>> +                          endian_string);
>>    else
>> -    if (target_byte_order_user == BFD_ENDIAN_BIG)
>> -      fprintf_unfiltered (file,
>> -                       _("The target is assumed to be big endian\n"));
>> -    else
>>        fprintf_unfiltered (file,
>> -                       _("The target is assumed to be little endian\n"));
>> +                       _("The target is assumed to be %s endian\n"),
>> +                          endian_string);
>
> This is bad for i18n, since big/little can no longer be translated.
>
> Andreas.
>
> --
> Andreas Schwab, schwab@linux-m68k.org
> GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
> "And now for something completely different."

Attachment: param_patch_v2.txt
Description: Text document


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