From: Vincenzo Frascino <vincenzo.frasc...@arm.com> The use of ptrdiff_t can trigger a warning because a successive cast to void * can generate a pointer that cannot be dereferenced.
Replace it with intptr_t that does not require provenance since being an integer is always valid. Signed-off-by: Vincenzo Frascino <vincenzo.frasc...@arm.com> Reviewed-by: Steve Capper <steve.cap...@arm.com> Signed-off-by: Steve Capper <steve.cap...@arm.com> --- console-tools/deallocvt.c | 2 +- console-tools/kbd_mode.c | 2 +- console-tools/openvt.c | 2 +- console-tools/showkey.c | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/console-tools/deallocvt.c b/console-tools/deallocvt.c index 6cd54653c..0854cb58c 100644 --- a/console-tools/deallocvt.c +++ b/console-tools/deallocvt.c @@ -40,6 +40,6 @@ int deallocvt_main(int argc UNUSED_PARAM, char **argv) } /* double cast suppresses "cast to ptr from int of different size" */ - xioctl(get_console_fd_or_die(), VT_DISALLOCATE, (void *)(ptrdiff_t)num); + xioctl(get_console_fd_or_die(), VT_DISALLOCATE, (void *)(intptr_t)num); return EXIT_SUCCESS; } diff --git a/console-tools/kbd_mode.c b/console-tools/kbd_mode.c index b0b963ee0..6409d8c30 100644 --- a/console-tools/kbd_mode.c +++ b/console-tools/kbd_mode.c @@ -85,7 +85,7 @@ int kbd_mode_main(int argc UNUSED_PARAM, char **argv) */ opt = opt & UNICODE ? 3 : opt >> 1; /* double cast prevents warnings about widening conversion */ - xioctl(fd, KDSKBMODE, (void*)(ptrdiff_t)opt); + xioctl(fd, KDSKBMODE, (void*)(intptr_t)opt); } if (ENABLE_FEATURE_CLEAN_UP) diff --git a/console-tools/openvt.c b/console-tools/openvt.c index db2f073b2..b2a5f2a8f 100644 --- a/console-tools/openvt.c +++ b/console-tools/openvt.c @@ -191,7 +191,7 @@ int openvt_main(int argc UNUSED_PARAM, char **argv) // Compat: even with -c N (try to) disallocate: // # /usr/app/kbd-1.12/bin/openvt -f -c 9 -ws sleep 5 // openvt: could not deallocate console 9 - xioctl(STDIN_FILENO, VT_DISALLOCATE, (void*)(ptrdiff_t)vtno); + xioctl(STDIN_FILENO, VT_DISALLOCATE, (void*)(intptr_t)vtno); } } return EXIT_SUCCESS; diff --git a/console-tools/showkey.c b/console-tools/showkey.c index 84eb38a0a..786f943ba 100644 --- a/console-tools/showkey.c +++ b/console-tools/showkey.c @@ -103,7 +103,7 @@ int showkey_main(int argc UNUSED_PARAM, char **argv) ); // set raw keyboard mode - xioctl(STDIN_FILENO, KDSKBMODE, (void *)(ptrdiff_t)((option_mask32 & OPT_k) ? K_MEDIUMRAW : K_RAW)); + xioctl(STDIN_FILENO, KDSKBMODE, (void *)(intptr_t)((option_mask32 & OPT_k) ? K_MEDIUMRAW : K_RAW)); // we should exit on any signal; signals should interrupt read bb_signals_norestart(BB_FATAL_SIGS, record_signo); @@ -148,7 +148,7 @@ int showkey_main(int argc UNUSED_PARAM, char **argv) } // restore keyboard mode - xioctl(STDIN_FILENO, KDSKBMODE, (void *)(ptrdiff_t)kbmode); + xioctl(STDIN_FILENO, KDSKBMODE, (void *)(intptr_t)kbmode); } // restore console settings -- 2.35.1 _______________________________________________ busybox mailing list busybox@busybox.net http://lists.busybox.net/mailman/listinfo/busybox