silence nonsensical warnings in timer_create
[musl] / src / time / timer_create.c
index 60a18c7..f76b9ef 100644 (file)
@@ -53,7 +53,7 @@ static void install_handler()
        };
        __libc_sigaction(SIGTIMER, &sa, 0);
        __syscall(SYS_rt_sigprocmask, SIG_UNBLOCK,
-               SIGTIMER_SET, 0, __SYSCALL_SSLEN);
+               SIGTIMER_SET, 0, _NSIG/8);
 }
 
 static void *start(void *arg)
@@ -99,7 +99,7 @@ int timer_create(clockid_t clk, struct sigevent *restrict evp, timer_t *restrict
                }
                if (syscall(SYS_timer_create, clk, ksevp, &timerid) < 0)
                        return -1;
-               *res = (void *)timerid;
+               *res = (void *)(intptr_t)timerid;
                break;
        case SIGEV_THREAD:
                pthread_once(&once, install_handler);
@@ -125,7 +125,7 @@ int timer_create(clockid_t clk, struct sigevent *restrict evp, timer_t *restrict
                        pthread_cancel(td);
                        return -1;
                }
-               td->result = (void *)timerid;
+               td->result = (void *)(intptr_t)timerid;
                *res = td;
                break;
        default: