]> granicus.if.org Git - strace/commit
Print indirect pointers as pointers
authorEugene Syromyatnikov <evgsyr@gmail.com>
Sun, 11 Dec 2016 15:50:53 +0000 (18:50 +0300)
committerDmitry V. Levin <ldv@altlinux.org>
Mon, 26 Dec 2016 15:29:06 +0000 (15:29 +0000)
commit3b4612b3ac908c5618b8fa4b6fd1e700fd11f2a6
tree2fc8c62a06ffa26842a347a27cb8d77976449e09
parent762b155643019fa7824adcc8bd90247f57c91bf4
Print indirect pointers as pointers

Originally, printnum_long_int was used, but it prints NULL incorrectly.

* defs.h (DECL_PRINTNUM_ADDR): New macro.
(DECL_PRINTNUM_ADDR(int), DECL_PRINTNUM_ADDR(int64)): New prototypes.
[!current_wordsize] (printnum_addr_long_int): New prototype.
[!current_wordsize] (printnum_ptr): Use it.
[current_wordsize > 4] (printnum_ptr): Use printnum_addr_int64.
[current_wordsize == 4] (printnum_ptr) Use printnum_addr_int.
* util.c (DEF_PRINTNUM_ADDR): New macro.
(DEF_PRINTNUM_ADDR(int, unsigned int),
DEF_PRINTNUM_ADDR(int64, uint64_t)): New macro instantiations that
provide printnum_addr_int and printnum_addr_int64, accordingly.
[!current_wordsize] (printnum_addr_long_int): New function.
* xet_robust_list.c (sprintaddr): New function.
(main): Use it, update expected output.
* tests/ipc_sem.c (main): Update expected output.

Co-authored-by: Dmitry V. Levin <ldv@altlinux.org>
defs.h
tests/ipc_sem.c
tests/xet_robust_list.c
util.c