From df20ffeb784aa66f43d0c79dac671740505295bb Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Sat, 8 Nov 2025 13:39:10 +0200 Subject: [PATCH] ; Avoid compilation warnings in emacs-module-tests * test/src/emacs-module-resources/mod-test.c (Fmod_test_address_to_userptr, Fmod_test_userptr_to_address): Avoid compilation warnings when 'intmax_t' is a 64-bit type, while pointers are 32-bit wide. --- test/src/emacs-module-resources/mod-test.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/test/src/emacs-module-resources/mod-test.c b/test/src/emacs-module-resources/mod-test.c index 1e592055f18..2acfeb81c20 100644 --- a/test/src/emacs-module-resources/mod-test.c +++ b/test/src/emacs-module-resources/mod-test.c @@ -315,14 +315,16 @@ Fmod_test_address_to_userptr (emacs_env *env, ptrdiff_t nargs, emacs_value args[], void *data) { intmax_t address = env->extract_integer (env, args[0]); - return env->make_user_ptr (env, NULL, (void *) address); + assert (address <= PTRDIFF_MAX); + ptrdiff_t addr = address; + return env->make_user_ptr (env, NULL, (void *) addr); } static emacs_value Fmod_test_userptr_to_address (emacs_env *env, ptrdiff_t nargs, emacs_value args[], void *data) { - intmax_t address = (intmax_t) env->get_user_ptr (env, args[0]); + intmax_t address = (ptrdiff_t) env->get_user_ptr (env, args[0]); return env->make_integer (env, address); }