On Sat, Apr 26, 2025 at 2:55 AM Robert Elz <k...@munnari.oz.au> wrote: > > Date: Fri, 25 Apr 2025 21:16:15 +0000 > From: sc.dy...@gmail.com > Message-ID: <16739581-057f-4b6b-85c5-d27431523...@gmail.com> > > | - DPRINTF("SITD %#jx next = %p prev = %#jx", > | + DPRINTF("SITD %#jx next = %jp prev = %#jx", > > WTF is %jp supposed to be? > > %p is for printing pointers ( (void *) lookalikes ). > %j is a size designator for integer types (and (uintptr_t) is > not necessarily (intmax_t) which %j expects). Just print pointers > (not converted to uintptr_t) as %p and be done with it. > > Then make sure everything that really is an int type, rather than > a pointer, really is intmax_t before passing it off to %jd (%jx etc).
Thank you for your explanation. I simply did egrep DPRINTF.*%[dlpsux] and replaced them. I thought %jp was for print uintptr_t variable (but I usually use %#jx for pointers.) > > kre > > ps: replying only to list, as gmail would simply refuse my message if > sent directly. > >