diff --git a/headers/portable_semaphore.h b/headers/portable_semaphore.h
index 682f11a9228caaad6a09b27a68ad3f3db41adcc1..6fae3705ea8988c26a923ae55df5127cee2c3d63 100644
--- a/headers/portable_semaphore.h
+++ b/headers/portable_semaphore.h
@@ -8,8 +8,7 @@ static inline sem_t *
 my_sem_init_with_name(char *name, uint32_t value)
 {
 #ifdef __APPLE__
-    int rc = sem_unlink(name);
-    sem_t *s;
+    sem_unlink(name);
     return sem_open(name, O_CREAT, 0644, value);
 #else
     sem_t *sem = malloc(sizeof(sem_t));
@@ -40,6 +39,7 @@ my_sem_destroy(sem_t *sem)
 #else
     int err = sem_destroy(sem);
     free(sem);
+    return err;
 #endif /* __APPLE__ */
 }