Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Simon Marchi <simon.marchi@polymtl.ca>
To: Guinevere Larsen <guinevere@redhat.com>, gdb-patches@sourceware.org
Subject: Re: [PATCH] gdb, gdbsupport, gdbserver: add support for printf 't' length modifier
Date: Mon, 19 Jan 2026 13:09:45 -0500	[thread overview]
Message-ID: <5f4ce462-c6a2-4b87-ab22-c159251678a6@polymtl.ca> (raw)
In-Reply-To: <f8fe6579-ea48-4bff-980f-e48e849b5373@redhat.com>

On 1/19/26 12:29 PM, Guinevere Larsen wrote:
> On 1/12/26 3:24 PM, simon.marchi@polymtl.ca wrote:
>> From: Simon Marchi <simon.marchi@polymtl.ca>
>>
>> Tom de Vries reported [1] that a use of the `t` printf length modifier
>> (used for ptrdiff_t) breaks "set debug dwarf-die 1":
>>
>>      +break -qualified main
>>      Reading Reading compcomp unit at offset  unit at offset 0x00x39
>>
>>      Reading comp unit at offset 0x1a8
>>      Reading comp unit at offset 0x1e9
>>      Reading comp unit at offset 0x2c5
>>      Reading comp unit at offset 0x2a2
>>      Reading comp unit at offset 0x904
>>      Unrecognized format specifier 't' in printf
>>
>> This use is in dwarf2/read.c:
>>
>>        gdb_printf (gdb_stdlog, "Read die from %s@0x%tx of %s:\n",
>>           m_die_section->get_name (),
>>           (begin_info_ptr - m_die_section->buffer),
>>           bfd_get_filename (m_abfd));
>>
>> Add support for the `t` length modifier in format_pieces, which
>> gdb_printf ultimately uses (through ui_out::vmessage).  Modify the three
>> users of format_pieces: gdb's printf command, gdb's ui_out::vmessage
>> function and gdbserver's ax_printf function.
>>
>> The implementation is mostly copied from what we do for size_t.
>>
>> Since format_pieces is also used to implement the printf command, this
>> patch brings user-visible changes.  Before:
>>
>>      (gdb) printf "%td\n", -123
>>      ❌️ Unrecognized format specifier 't' in printf
>>
>> After:
>>
>>      (gdb) printf "%td\n", -123
>>      -123
>>
>> [1] https://inbox.sourceware.org/gdb-patches/d4ccce34-aad5-4e3d-8fc9-efb2fc11275c@suse.de/
>>
>> Change-Id: Ie9fce78f5f48082d8f8a9ca2847b5ae26acaa60d
>> ---
> 
> This commit seems to have caused a regression. After this, when starting GDB without the quiet flag I get the following:
> 
> 0x7ffc6b9bc520s
> Copyright (C) 2026 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <0x7ffc6b9bc560s>
> This is free software: you are free to change and redistribute it
> There is NO WARRANTY, to the extent permitted by law.
> Type "0x7ffc6b9bc5e0s" and "0x7ffc6b9bc5a0s" for details.
> This GDB was configured as "x86_64-pc-linux-gnu".
> Type "0x7ffc6b9bc620s" for configuration details.
> For bug reporting instructions, please see:
> 0x7ffc6b9bc660s.
> 
> That is, anywhere where GDB would print a styled string, we seem to be printing a pointer address instead.


Hmm, I don't see this.  I see a pink "GNU gdb (GDB)
18.0.50.20260119-git" where you see the "0x7ffc6b9bc660s".
We will need to figure out what is different between our setups.

Simon

  reply	other threads:[~2026-01-19 18:10 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-12 18:24 simon.marchi
2026-01-15 19:24 ` Tom Tromey
2026-01-15 19:36   ` Simon Marchi
2026-01-15 19:42     ` Tom Tromey
2026-01-19 17:29 ` Guinevere Larsen
2026-01-19 18:09   ` Simon Marchi [this message]
2026-01-20 12:29     ` Guinevere Larsen

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=5f4ce462-c6a2-4b87-ab22-c159251678a6@polymtl.ca \
    --to=simon.marchi@polymtl.ca \
    --cc=gdb-patches@sourceware.org \
    --cc=guinevere@redhat.com \
    /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