fbsd-nat: Don't use '%jd' and '%ju' with printf_filtered.
authorJohn Baldwin <jhb@FreeBSD.org>
Mon, 30 Aug 2021 18:08:38 +0000 (11:08 -0700)
committerJohn Baldwin <jhb@FreeBSD.org>
Mon, 30 Aug 2021 18:08:38 +0000 (11:08 -0700)
commit6fc590e1f5e43a7ea7d466c18ebb97515baa497f
tree52654cfeddfe73f5f58803802a6f702a67838d6f
parent00894ecf4636a242fbd11536acdf50f7891b374a
fbsd-nat: Don't use '%jd' and '%ju' with printf_filtered.

The handler for 'info proc status' for native processes on FreeBSD
uses the 'j' size modifier along with uintmax_t / intmax_t casts to
output integer values for types such as off_t that are not aliases of
a basic C type such as 'int' or 'long'.  printf_filtered does not
support the 'j' modifer, so this resulted in runtime errors in
practice:

(gdb) info proc stat
process 8674
Name: ls
State: T (stopped)
Parent process: 8673
Process group: 8674
Session id: 2779
Unrecognized format specifier 'j' in printf

Instead, use plongest and pulongest to generate the output strings of
these integer values.
gdb/fbsd-nat.c