about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/custommem.c44
-rwxr-xr-xsrc/dynarec/dynarec.c10
-rwxr-xr-xsrc/elfs/elfload_dump.c40
-rwxr-xr-xsrc/elfs/elfloader.c145
-rwxr-xr-xsrc/elfs/elfloader_private.h40
-rwxr-xr-xsrc/elfs/elfparser.c32
-rwxr-xr-xsrc/emu/x64emu.c9
-rwxr-xr-xsrc/emu/x64int3.c8
-rwxr-xr-xsrc/emu/x64primop.h4
-rw-r--r--src/emu/x64run64.c8
-rw-r--r--src/emu/x64run6766.c26
-rw-r--r--src/emu/x64run67660f.c26
-rwxr-xr-xsrc/emu/x64run_private.c13
-rwxr-xr-xsrc/emu/x64run_private.h8
-rw-r--r--src/emu/x64rundf.c4
-rw-r--r--src/emu/x64runf0.c4
-rwxr-xr-xsrc/emu/x64syscall.c4
-rwxr-xr-xsrc/emu/x64tls.c8
-rwxr-xr-xsrc/emu/x87emu_private.h8
-rwxr-xr-xsrc/include/box64context.h6
-rw-r--r--src/include/custommem.h4
-rwxr-xr-xsrc/include/elfloader.h5
-rwxr-xr-xsrc/include/librarian.h8
-rwxr-xr-xsrc/include/wrappedlibs.h3
-rwxr-xr-xsrc/librarian/librarian.c11
-rwxr-xr-xsrc/librarian/librarian_private.h2
-rwxr-xr-xsrc/librarian/library.c10
-rwxr-xr-xsrc/libtools/auxval.c4
-rwxr-xr-xsrc/libtools/signals.c2
-rwxr-xr-xsrc/libtools/threads.c50
-rwxr-xr-xsrc/main.c54
-rwxr-xr-xsrc/tools/box64stack.c6
-rwxr-xr-xsrc/tools/bridge.c2
-rwxr-xr-xsrc/tools/callback.c2
-rwxr-xr-xsrc/tools/fileutils.c2
-rw-r--r--src/wrapped/generated/wrappedbz2types.h2
-rw-r--r--src/wrapped/generated/wrappedcryptotypes.h2
-rw-r--r--src/wrapped/generated/wrappedcurltypes.h2
-rw-r--r--src/wrapped/generated/wrappeddbustypes.h2
-rw-r--r--src/wrapped/generated/wrappedfontconfigtypes.h2
-rw-r--r--src/wrapped/generated/wrappedfreetypetypes.h2
-rw-r--r--src/wrapped/generated/wrappedgnutlstypes.h2
-rw-r--r--src/wrapped/generated/wrappedldlinuxtypes.h2
-rw-r--r--src/wrapped/generated/wrappedlibasoundtypes.h2
-rw-r--r--src/wrapped/generated/wrappedlibctypes.h2
-rw-r--r--src/wrapped/generated/wrappedlibdltypes.h2
-rw-r--r--src/wrapped/generated/wrappedlibgltypes.h2
-rw-r--r--src/wrapped/generated/wrappedlibglutypes.h2
-rw-r--r--src/wrapped/generated/wrappedlibpthreadtypes.h2
-rw-r--r--src/wrapped/generated/wrappedlibrttypes.h2
-rw-r--r--src/wrapped/generated/wrappedlibsmtypes.h2
-rw-r--r--src/wrapped/generated/wrappedlibssltypes.h2
-rw-r--r--src/wrapped/generated/wrappedlibx11types.h2
-rw-r--r--src/wrapped/generated/wrappedlibxexttypes.h2
-rw-r--r--src/wrapped/generated/wrappedlibxtsttypes.h2
-rw-r--r--src/wrapped/generated/wrappedlibxttypes.h2
-rw-r--r--src/wrapped/generated/wrappedlibztypes.h2
-rw-r--r--src/wrapped/generated/wrappedopenaltypes.h2
-rw-r--r--src/wrapped/generated/wrappedpangotypes.h2
-rw-r--r--src/wrapped/generated/wrappedpulsetypes.h2
-rw-r--r--src/wrapped/generated/wrappedsdl1imagetypes.h2
-rw-r--r--src/wrapped/generated/wrappedsdl1mixertypes.h2
-rw-r--r--src/wrapped/generated/wrappedsdl1ttftypes.h2
-rw-r--r--src/wrapped/generated/wrappedsdl1types.h2
-rw-r--r--src/wrapped/generated/wrappedsdl2imagetypes.h2
-rw-r--r--src/wrapped/generated/wrappedsdl2mixertypes.h2
-rw-r--r--src/wrapped/generated/wrappedsdl2ttftypes.h2
-rw-r--r--src/wrapped/generated/wrappedsdl2types.h2
-rw-r--r--src/wrapped/generated/wrappedsmpeg2types.h2
-rw-r--r--src/wrapped/generated/wrappedsmpegtypes.h2
-rw-r--r--src/wrapped/generated/wrappedutiltypes.h2
-rw-r--r--src/wrapped/generated/wrappedvorbisfiletypes.h2
-rw-r--r--src/wrapped/generated/wrapper.c4
-rw-r--r--src/wrapped/generated/wrapper.h2
-rwxr-xr-xsrc/wrapped/wrappedbz2.c8
-rwxr-xr-xsrc/wrapped/wrappedcrypto.c31
-rwxr-xr-xsrc/wrapped/wrappedcurl.c4
-rwxr-xr-xsrc/wrapped/wrappeddbus.c18
-rwxr-xr-xsrc/wrapped/wrappedfontconfig.c3
-rwxr-xr-xsrc/wrapped/wrappedfreetype.c3
-rwxr-xr-xsrc/wrapped/wrappedgnutls.c8
-rwxr-xr-xsrc/wrapped/wrappedlib_init.h4
-rwxr-xr-xsrc/wrapped/wrappedlibasound.c9
-rwxr-xr-xsrc/wrapped/wrappedlibc.c86
-rwxr-xr-xsrc/wrapped/wrappedlibdl.c12
-rwxr-xr-xsrc/wrapped/wrappedlibglu.c4
-rwxr-xr-xsrc/wrapped/wrappedlibpthread.c2
-rwxr-xr-xsrc/wrapped/wrappedlibrt.c1
-rwxr-xr-xsrc/wrapped/wrappedlibsm.c7
-rwxr-xr-xsrc/wrapped/wrappedlibssl.c17
-rwxr-xr-xsrc/wrapped/wrappedlibvorbis.c3
-rwxr-xr-xsrc/wrapped/wrappedlibx11.c2
-rwxr-xr-xsrc/wrapped/wrappedlibxext.c3
-rwxr-xr-xsrc/wrapped/wrappedlibxt.c3
-rwxr-xr-xsrc/wrapped/wrappedlibxtst.c4
-rwxr-xr-xsrc/wrapped/wrappedlibz.c2
-rwxr-xr-xsrc/wrapped/wrappedlzma.c3
-rwxr-xr-xsrc/wrapped/wrappedopenal.c4
-rwxr-xr-xsrc/wrapped/wrappedpango.c3
-rwxr-xr-xsrc/wrapped/wrappedpulse.c3
-rwxr-xr-xsrc/wrapped/wrappedsdl1.c1
-rwxr-xr-xsrc/wrapped/wrappedsdl1mixer.c2
-rwxr-xr-xsrc/wrapped/wrappedsdl2.c15
-rwxr-xr-xsrc/wrapped/wrappedsdl2mixer.c4
-rwxr-xr-xsrc/wrapped/wrappedsdl2net.c2
-rwxr-xr-xsrc/wrapped/wrappedsmpeg.c3
-rwxr-xr-xsrc/wrapped/wrappedsmpeg2.c3
-rwxr-xr-xsrc/wrapped/wrappedvorbisfile.c1
108 files changed, 562 insertions, 408 deletions
diff --git a/src/custommem.c b/src/custommem.c
index f4c0102d..f428706d 100644
--- a/src/custommem.c
+++ b/src/custommem.c
@@ -33,7 +33,7 @@ KHASH_MAP_INIT_INT64(dynablocks, dynablock_t*)
 static dynablocklist_t***  dynmap123[1<<DYNAMAP_SHIFT]; // 64bits.. in 4x16bits array
 static pthread_mutex_t     mutex_mmap;
 static mmaplist_t          *mmaplist;
-static int                 mmapsize;
+static size_t              mmapsize;
 static kh_dynablocks_t     *dblist_oversized;      // store the list of oversized dynablocks (normal sized are inside mmaplist)
 static uintptr_t***        box64_jmptbl3[1<<JMPTABL_SHIFT];
 static uintptr_t**         box64_jmptbldefault2[1<<JMPTABL_SHIFT];
@@ -50,7 +50,7 @@ static int inited = 0;
 
 typedef struct blocklist_s {
     void*               block;
-    int                 maxfree;
+    size_t              maxfree;
     size_t              size;
 } blocklist_t;
 
@@ -74,7 +74,7 @@ typedef struct blockmark_s {
 
 
 // get first subblock free in block, stating at start (from block). return NULL if no block, else first subblock free (mark included), filling size
-static void* getFirstBlock(void* block, int maxsize, int* size)
+static void* getFirstBlock(void* block, size_t maxsize, size_t* size)
 {
     // get start of block
     blockmark_t *m = (blockmark_t*)block;
@@ -89,7 +89,7 @@ static void* getFirstBlock(void* block, int maxsize, int* size)
     return NULL;
 }
 
-static int getMaxFreeBlock(void* block, size_t block_size)
+static size_t getMaxFreeBlock(void* block, size_t block_size)
 {
     // get start of block
     blockmark_t *m = (blockmark_t*)((uintptr_t)block+block_size-sizeof(blockmark_t)); // styart with the end
@@ -105,8 +105,10 @@ static int getMaxFreeBlock(void* block, size_t block_size)
     return maxsize;
 }
 
-static void* allocBlock(void* block, void *sub, int size)
+static void* allocBlock(void* block, void *sub, size_t size)
 {
+    (void)block;
+
     blockmark_t *s = (blockmark_t*)sub;
     blockmark_t *n = (blockmark_t*)((uintptr_t)s + s->next.size);
 
@@ -152,14 +154,17 @@ static void freeBlock(void *block, void* sub)
     }
 }
 // return 1 if block has been expanded to new size, 0 if not
-static int expandBlock(void* block, void* sub, int newsize)
+static int expandBlock(void* block, void* sub, size_t newsize)
 {
+    (void)block;
+
     newsize = (newsize+3)&~3;
     blockmark_t *s = (blockmark_t*)sub;
     blockmark_t *n = (blockmark_t*)((uintptr_t)s + s->next.size);
     if(s->next.fill)
         return 0;   // next block is filled
-    if(s->next.size + n->next.size < newsize)
+    // unsigned bitfield of this length gets "promoted" to *signed* int...
+    if((size_t)(s->next.size + n->next.size) < newsize)
         return 0;   // free space too short
     // ok, doing the alloc!
     s->next.size = newsize+sizeof(blockmark_t);
@@ -178,7 +183,7 @@ static int expandBlock(void* block, void* sub, int newsize)
     return 1;
 }
 // return size of block
-static int sizeBlock(void* sub)
+static size_t sizeBlock(void* sub)
 {
     blockmark_t *s = (blockmark_t*)sub;
     return s->next.size;
@@ -191,7 +196,7 @@ void* customMalloc(size_t size)
     pthread_mutex_lock(&mutex_blocks);
     for(int i=0; i<n_blocks; ++i) {
         if(p_blocks[i].maxfree>=size) {
-            int rsize = 0;
+            size_t rsize = 0;
             sub = getFirstBlock(p_blocks[i].block, size, &rsize);
             if(sub) {
                 void* ret = allocBlock(p_blocks[i].block, sub, size);
@@ -253,17 +258,16 @@ void* customRealloc(void* p, size_t size)
                 pthread_mutex_unlock(&mutex_blocks);
                 return p;
             }
-                pthread_mutex_unlock(&mutex_blocks);
-                void* newp = customMalloc(size);
-                memcpy(newp, p, sizeBlock(sub));
-                customFree(p);
-                return newp;
-            
+            pthread_mutex_unlock(&mutex_blocks);
+            void* newp = customMalloc(size);
+            memcpy(newp, p, sizeBlock(sub));
+            customFree(p);
+            return newp;
         }
     }
     pthread_mutex_unlock(&mutex_blocks);
     if(n_blocks)
-        dynarec_log(LOG_NONE, "Warning, block %p not found in p_blocks for Realloc, Malloc'ng again without free\n", (void*)addr);
+        dynarec_log(LOG_NONE, "Warning, block %p not found in p_blocks for realloc, malloc'ing again without free\n", (void*)addr);
     return customMalloc(size);
 }
 void customFree(void* p)
@@ -296,7 +300,7 @@ typedef struct mmaplist_s {
     uint8_t*            helper;
 } mmaplist_t;
 
-uintptr_t FindFreeDynarecMap(dynablock_t* db, int size)
+uintptr_t FindFreeDynarecMap(dynablock_t* db, size_t size)
 {
     // look for free space
     void* sub = NULL;
@@ -326,7 +330,7 @@ uintptr_t FindFreeDynarecMap(dynablock_t* db, int size)
     return 0;
 }
 
-uintptr_t AddNewDynarecMap(dynablock_t* db, int size)
+uintptr_t AddNewDynarecMap(dynablock_t* db, size_t size)
 {
     int i = mmapsize++;
     dynarec_log(LOG_DEBUG, "Ask for DynaRec Block Alloc #%d\n", mmapsize);
@@ -832,7 +836,7 @@ uint32_t getProtection(uintptr_t addr)
 #define LOWEST (void*)0x20000
 int availableBlock(uint8_t* p, size_t n)
 {
-    for (int i=0; i<n; ++i, ++p)
+    for (size_t i=0; i<n; ++i, ++p)
         if(*p)
             return 0;
     return 1;
@@ -943,6 +947,7 @@ static void atfork_child_custommem(void)
 
 void init_custommem_helper(box64context_t* ctx)
 {
+    (void)ctx;
     if(inited) // already initialized
         return;
     inited = 1;
@@ -966,6 +971,7 @@ void init_custommem_helper(box64context_t* ctx)
 
 void fini_custommem_helper(box64context_t *ctx)
 {
+    (void)ctx;
     if(!inited)
         return;
     inited = 0;
diff --git a/src/dynarec/dynarec.c b/src/dynarec/dynarec.c
index 4e7e0953..a142f91d 100755
--- a/src/dynarec/dynarec.c
+++ b/src/dynarec/dynarec.c
@@ -65,6 +65,11 @@ printf_log(LOG_NONE, "Warning, jumping to a no-block address %p from %p (db=%p,
 }
 #endif
 
+#ifdef __GNUC__
+// Disable "clobbered" warnings
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wclobbered"
+#endif
 void DynaCall(x64emu_t* emu, uintptr_t addr)
 {
     // prepare setjump for signal handling
@@ -214,4 +219,7 @@ int DynaRun(x64emu_t* emu)
         ejb->jmpbuf_ok = 0;
     return 0;
 #endif
-}
\ No newline at end of file
+}
+#ifdef __GNUC__
+#pragma GCC diagnostic pop
+#endif
diff --git a/src/elfs/elfload_dump.c b/src/elfs/elfload_dump.c
index 85d01dcb..0ad72f00 100755
--- a/src/elfs/elfload_dump.c
+++ b/src/elfs/elfload_dump.c
@@ -253,19 +253,19 @@ void DumpMainHeader(Elf64_Ehdr *header, elfheader_t *h)
         printf_log(LOG_DUMP, "  Section Header table offset = %p\n", (void*)header->e_shoff);
         printf_log(LOG_DUMP, "  Flags = 0x%X\n", header->e_flags);
         printf_log(LOG_DUMP, "  ELF Header size = %d\n", header->e_ehsize);
-        printf_log(LOG_DUMP, "  Program Header Entry num/size = %d(%d)/%d\n", h->numPHEntries, header->e_phnum, header->e_phentsize);
-        printf_log(LOG_DUMP, "  Section Header Entry num/size = %d(%d)/%d\n", h->numSHEntries, header->e_shnum, header->e_shentsize);
-        printf_log(LOG_DUMP, "  Section Header index num = %d(%d)\n", h->SHIdx, header->e_shstrndx);
+        printf_log(LOG_DUMP, "  Program Header Entry num/size = %zu(%d)/%d\n", h->numPHEntries, header->e_phnum, header->e_phentsize);
+        printf_log(LOG_DUMP, "  Section Header Entry num/size = %zu(%d)/%d\n", h->numSHEntries, header->e_shnum, header->e_shentsize);
+        printf_log(LOG_DUMP, "  Section Header index num = %zu(%d)\n", h->SHIdx, header->e_shstrndx);
         printf_log(LOG_DUMP, "ELF Dump ==========\n");
 
-        printf_log(LOG_DUMP, "ELF Dump PEntries (%d)\n", h->numSHEntries);
-        for (int i=0; i<h->numPHEntries; ++i)
-            printf_log(LOG_DUMP, "  PHEntry %04d : %s\n", i, DumpPHEntry(h->PHEntries+i));
+        printf_log(LOG_DUMP, "ELF Dump PEntries (%zu)\n", h->numPHEntries);
+        for (size_t i=0; i<h->numPHEntries; ++i)
+            printf_log(LOG_DUMP, "  PHEntry %04zu : %s\n", i, DumpPHEntry(h->PHEntries+i));
         printf_log(LOG_DUMP, "ELF Dump PEntries ====\n");
 
-        printf_log(LOG_DUMP, "ELF Dump Sections (%d)\n", h->numSHEntries);
-        for (int i=0; i<h->numSHEntries; ++i)
-            printf_log(LOG_DUMP, "  Section %04d : %s\n", i, DumpSection(h->SHEntries+i, h->SHStrTab));
+        printf_log(LOG_DUMP, "ELF Dump Sections (%zu)\n", h->numSHEntries);
+        for (size_t i=0; i<h->numSHEntries; ++i)
+            printf_log(LOG_DUMP, "  Section %04zu : %s\n", i, DumpSection(h->SHEntries+i, h->SHStrTab));
         printf_log(LOG_DUMP, "ELF Dump Sections ====\n");
     }
 }
@@ -274,9 +274,9 @@ void DumpSymTab(elfheader_t *h)
 {
     if(box64_log>=LOG_DUMP && h->SymTab) {
         const char* name = ElfName(h);
-        printf_log(LOG_DUMP, "ELF Dump SymTab(%d)=\n", h->numSymTab);
-        for (int i=0; i<h->numSymTab; ++i)
-            printf_log(LOG_DUMP, "  %s:SymTab[%d] = \"%s\", value=%p, size=%ld, info/other=%d/%d index=%d\n", name, 
+        printf_log(LOG_DUMP, "ELF Dump SymTab(%zu)=\n", h->numSymTab);
+        for (size_t i=0; i<h->numSymTab; ++i)
+            printf_log(LOG_DUMP, "  %s:SymTab[%zu] = \"%s\", value=%p, size=%ld, info/other=%d/%d index=%d\n", name, 
                 i, h->StrTab+h->SymTab[i].st_name, (void*)h->SymTab[i].st_value, h->SymTab[i].st_size,
                 h->SymTab[i].st_info, h->SymTab[i].st_other, h->SymTab[i].st_shndx);
         printf_log(LOG_DUMP, "ELF Dump SymTab=====\n");
@@ -286,9 +286,9 @@ void DumpSymTab(elfheader_t *h)
 void DumpDynamicSections(elfheader_t *h)
 {
     if(box64_log>=LOG_DUMP && h->Dynamic) {
-        printf_log(LOG_DUMP, "ELF Dump Dynamic(%d)=\n", h->numDynamic);
-        for (int i=0; i<h->numDynamic; ++i)
-            printf_log(LOG_DUMP, "  Dynamic %04d : %s\n", i, DumpDynamic(h->Dynamic+i));
+        printf_log(LOG_DUMP, "ELF Dump Dynamic(%zu)=\n", h->numDynamic);
+        for (size_t i=0; i<h->numDynamic; ++i)
+            printf_log(LOG_DUMP, "  Dynamic %04zu : %s\n", i, DumpDynamic(h->Dynamic+i));
         printf_log(LOG_DUMP, "ELF Dump Dynamic=====\n");
     }
 }
@@ -297,9 +297,9 @@ void DumpDynSym(elfheader_t *h)
 {
     if(box64_log>=LOG_DUMP && h->DynSym) {
         const char* name = ElfName(h);
-        printf_log(LOG_DUMP, "ELF Dump DynSym(%d)=\n", h->numDynSym);
-        for (int i=0; i<h->numDynSym; ++i)
-            printf_log(LOG_DUMP, "  %s:DynSym[%d] = %s\n", name, i, DumpSym(h, h->DynSym+i));
+        printf_log(LOG_DUMP, "ELF Dump DynSym(%zu)=\n", h->numDynSym);
+        for (size_t i=0; i<h->numDynSym; ++i)
+            printf_log(LOG_DUMP, "  %s:DynSym[%zu] = %s\n", name, i, DumpSym(h, h->DynSym+i));
         printf_log(LOG_DUMP, "ELF Dump DynSym=====\n");
     }
 }
@@ -308,7 +308,7 @@ void DumpDynamicNeeded(elfheader_t *h)
 {
     if(box64_log>=LOG_DUMP && h->DynStrTab) {
         printf_log(LOG_DUMP, "ELF Dump DT_NEEDED=====\n");
-        for (int i=0; i<h->numDynamic; ++i)
+        for (size_t i=0; i<h->numDynamic; ++i)
             if(h->Dynamic[i].d_tag==DT_NEEDED) {
                 printf_log(LOG_DUMP, "  Needed : %s\n", h->DynStrTab+h->Dynamic[i].d_un.d_val + h->delta);
             }
@@ -320,7 +320,7 @@ void DumpDynamicRPath(elfheader_t *h)
 {
     if(box64_log>=LOG_DUMP && h->DynStrTab) {
         printf_log(LOG_DUMP, "ELF Dump DT_RPATH/DT_RUNPATH=====\n");
-        for (int i=0; i<h->numDynamic; ++i) {
+        for (size_t i=0; i<h->numDynamic; ++i) {
             if(h->Dynamic[i].d_tag==DT_RPATH) {
                 printf_log(LOG_DUMP, "   RPATH : %s\n", h->DynStrTab+h->Dynamic[i].d_un.d_val + h->delta);
             }
diff --git a/src/elfs/elfloader.c b/src/elfs/elfloader.c
index 4e6a3be9..2283609e 100755
--- a/src/elfs/elfloader.c
+++ b/src/elfs/elfloader.c
@@ -92,7 +92,7 @@ int CalcLoadAddr(elfheader_t* head)
     head->memsz = 0;
     head->paddr = head->vaddr = ~(uintptr_t)0;
     head->align = 1;
-    for (int i=0; i<head->numPHEntries; ++i)
+    for (size_t i=0; i<head->numPHEntries; ++i)
         if(head->PHEntries[i].p_type == PT_LOAD) {
             if(head->paddr > (uintptr_t)head->PHEntries[i].p_paddr)
                 head->paddr = (uintptr_t)head->PHEntries[i].p_paddr;
@@ -107,7 +107,7 @@ int CalcLoadAddr(elfheader_t* head)
 
     head->stacksz = 1024*1024;          //1M stack size default?
     head->stackalign = 16;   // default align for stack
-    for (int i=0; i<head->numPHEntries; ++i) {
+    for (size_t i=0; i<head->numPHEntries; ++i) {
         if(head->PHEntries[i].p_type == PT_LOAD) {
             uintptr_t phend = head->PHEntries[i].p_vaddr - head->vaddr + head->PHEntries[i].p_memsz;
             if(phend > head->memsz)
@@ -130,9 +130,9 @@ int CalcLoadAddr(elfheader_t* head)
                     head->tlssize++;
         }
     }
-    printf_log(LOG_DEBUG, "Elf Addr(v/p)=%p/%p Memsize=0x%lx (align=0x%x)\n", (void*)head->vaddr, (void*)head->paddr, head->memsz, head->align);
-    printf_log(LOG_DEBUG, "Elf Stack Memsize=%lu (align=%u)\n", head->stacksz, head->stackalign);
-    printf_log(LOG_DEBUG, "Elf TLS Memsize=%u (align=%u)\n", head->tlssize, head->tlsalign);
+    printf_log(LOG_DEBUG, "Elf Addr(v/p)=%p/%p Memsize=0x%lx (align=0x%zx)\n", (void*)head->vaddr, (void*)head->paddr, head->memsz, head->align);
+    printf_log(LOG_DEBUG, "Elf Stack Memsize=%lu (align=%zu)\n", head->stacksz, head->stackalign);
+    printf_log(LOG_DEBUG, "Elf TLS Memsize=%lu (align=%zu)\n", head->tlssize, head->tlsalign);
 
     return 0;
 }
@@ -156,7 +156,7 @@ int AllocElfMemory(box64context_t* context, elfheader_t* head, int mainbin)
         offs = head->vaddr;
     if(head->vaddr) {
         head->multiblock_n = 0; // count PHEntrie with LOAD
-        for (int i=0; i<head->numPHEntries; ++i) 
+        for (size_t i=0; i<head->numPHEntries; ++i) 
             if(head->PHEntries[i].p_type == PT_LOAD && head->PHEntries[i].p_flags)
                 ++head->multiblock_n;
         head->multiblock_size = (uint64_t*)calloc(head->multiblock_n, sizeof(uint64_t));
@@ -165,11 +165,11 @@ int AllocElfMemory(box64context_t* context, elfheader_t* head, int mainbin)
         // and now, create all individual blocks
         head->memory = (char*)0xffffffffffffffff;
         int n = 0;
-        for (int i=0; i<head->numPHEntries; ++i) 
+        for (size_t i=0; i<head->numPHEntries; ++i) 
             if(head->PHEntries[i].p_type == PT_LOAD && head->PHEntries[i].p_flags) {
                 Elf64_Phdr * e = &head->PHEntries[i];
                 uintptr_t bstart = e->p_vaddr;
-                uint32_t bsize = e->p_memsz;
+                uint64_t bsize = e->p_memsz;
                 uintptr_t balign = e->p_align;
                 if (balign) balign = balign-1; else balign = 1;
                 if(balign<4095) balign = 4095;
@@ -206,22 +206,22 @@ int AllocElfMemory(box64context_t* context, elfheader_t* head, int mainbin)
                 , MAP_PRIVATE | MAP_ANONYMOUS /*| ((wine_preloaded)?MAP_FIXED:0)*/
                 , -1, 0);
             if(p==MAP_FAILED) {
-                printf_log(LOG_NONE, "Cannot create memory map (@%p 0x%lx/0x%x) for elf \"%s\"\n", (void*)head->multiblock_offs[i], head->multiblock_size[i], head->align, head->name);
+                printf_log(LOG_NONE, "Cannot create memory map (@%p 0x%lx/0x%zx) for elf \"%s\"\n", (void*)head->multiblock_offs[i], head->multiblock_size[i], head->align, head->name);
                 return 1;
             }
             if(head->multiblock_offs[i] &&( p!=(void*)head->multiblock_offs[i])) {
                 if((head->e_type!=ET_DYN)) {
-                    printf_log(LOG_NONE, "Error, memory map (@%p 0x%lx/0x%x) for elf \"%s\" allocated @%p\n", (void*)head->multiblock_offs[i], head->multiblock_size[i], head->align, head->name, p);
+                    printf_log(LOG_NONE, "Error, memory map (@%p 0x%lx/0x%zx) for elf \"%s\" allocated @%p\n", (void*)head->multiblock_offs[i], head->multiblock_size[i], head->align, head->name, p);
                     return 1;
                 } else {
-                    printf_log(LOG_INFO, "Allocated memory is not at hinted %p but %p (size %p) \"%s\"\n", (void*)head->multiblock_offs[i], p, (void*)head->multiblock_size[i], head->name);
+                    printf_log(LOG_INFO, "Allocated memory is not at hinted %p but %p (size %lx) \"%s\"\n", (void*)head->multiblock_offs[i], p, head->multiblock_size[i], head->name);
                     // need to adjust vaddr!
-                    for (int i=0; i<head->numPHEntries; ++i) 
-                        if(head->PHEntries[i].p_type == PT_LOAD) {
-                            Elf64_Phdr * e = &head->PHEntries[i];
-                            if(e->p_vaddr>=head->multiblock_offs[i] && e->p_vaddr<(head->multiblock_offs[i]+head->multiblock_size[i])) {
-                                e->p_vaddr = e->p_vaddr - head->multiblock_offs[i] + (uintptr_t)p;
-                                if(!head->delta) head->delta = (intptr_t)p - (intptr_t)head->multiblock_offs[i];
+                    for (size_t j=0; j<head->numPHEntries; ++j) 
+                        if(head->PHEntries[j].p_type == PT_LOAD) {
+                            Elf64_Phdr * e = &head->PHEntries[j];
+                            if(e->p_vaddr>=head->multiblock_offs[j] && e->p_vaddr<(head->multiblock_offs[j]+head->multiblock_size[j])) {
+                                e->p_vaddr = e->p_vaddr - head->multiblock_offs[j] + (uintptr_t)p;
+                                if(!head->delta) head->delta = (intptr_t)p - (intptr_t)head->multiblock_offs[j];
                             }
                         }
                 }
@@ -239,11 +239,11 @@ int AllocElfMemory(box64context_t* context, elfheader_t* head, int mainbin)
             , MAP_PRIVATE | MAP_ANONYMOUS /*| (((offs&&wine_preloaded)?MAP_FIXED:0))*/
             , -1, 0);
         if(p==MAP_FAILED) {
-            printf_log(LOG_NONE, "Cannot create memory map (@%p 0x%lx/0x%x) for elf \"%s\"\n", (void*)offs, head->memsz, head->align, head->name);
+            printf_log(LOG_NONE, "Cannot create memory map (@%p 0x%lx/0x%zx) for elf \"%s\"\n", (void*)offs, head->memsz, head->align, head->name);
             return 1;
         }
         if(offs && (p!=(void*)offs) && (head->e_type!=ET_DYN)) {
-            printf_log(LOG_NONE, "Error, memory map (@%p 0x%lx/0x%x) for elf \"%s\" allocated @%p\n", (void*)offs, head->memsz, head->align, head->name, p);
+            printf_log(LOG_NONE, "Error, memory map (@%p 0x%lx/0x%zx) for elf \"%s\" allocated @%p\n", (void*)offs, head->memsz, head->align, head->name, p);
             return 1;
         }
         setProtection((uintptr_t)p, head->memsz, PROT_READ | PROT_WRITE | PROT_EXEC);
@@ -279,15 +279,15 @@ void FreeElfMemory(elfheader_t* head)
 
 int LoadElfMemory(FILE* f, box64context_t* context, elfheader_t* head)
 {
-    for (int i=0; i<head->numPHEntries; ++i) {
+    for (size_t i=0; i<head->numPHEntries; ++i) {
         if(head->PHEntries[i].p_type == PT_LOAD) {
             Elf64_Phdr * e = &head->PHEntries[i];
             char* dest = (char*)e->p_paddr + head->delta;
-            printf_log(LOG_DEBUG, "Loading block #%i @%p (0x%lx/0x%lx)\n", i, dest, e->p_filesz, e->p_memsz);
+            printf_log(LOG_DEBUG, "Loading block #%zu @%p (0x%lx/0x%lx)\n", i, dest, e->p_filesz, e->p_memsz);
             fseeko64(f, e->p_offset, SEEK_SET);
             if(e->p_filesz) {
                 if(fread(dest, e->p_filesz, 1, f)!=1) {
-                    printf_log(LOG_NONE, "Fail to read PT_LOAD part #%d (size=%ld)\n", i, e->p_filesz);
+                    printf_log(LOG_NONE, "Fail to read PT_LOAD part #%zu (size=%ld)\n", i, e->p_filesz);
                     return 1;
                 }
             }
@@ -305,11 +305,11 @@ int LoadElfMemory(FILE* f, box64context_t* context, elfheader_t* head)
         if(head->PHEntries[i].p_type == PT_TLS) {
             Elf64_Phdr * e = &head->PHEntries[i];
             char* dest = (char*)(context->tlsdata+context->tlssize+head->tlsbase);
-            printf_log(LOG_DEBUG, "Loading TLS block #%i @%p (0x%lx/0x%lx)\n", i, dest, e->p_filesz, e->p_memsz);
+            printf_log(LOG_DEBUG, "Loading TLS block #%zu @%p (0x%lx/0x%lx)\n", i, dest, e->p_filesz, e->p_memsz);
             if(e->p_filesz) {
                 fseeko64(f, e->p_offset, SEEK_SET);
                 if(fread(dest, e->p_filesz, 1, f)!=1) {
-                    printf_log(LOG_NONE, "Fail to read PT_TLS part #%d (size=%ld)\n", i, e->p_filesz);
+                    printf_log(LOG_NONE, "Fail to read PT_TLS part #%zu (size=%ld)\n", i, e->p_filesz);
                     return 1;
                 }
             }
@@ -323,13 +323,15 @@ int LoadElfMemory(FILE* f, box64context_t* context, elfheader_t* head)
 
 int ReloadElfMemory(FILE* f, box64context_t* context, elfheader_t* head)
 {
-    for (int i=0; i<head->numPHEntries; ++i) {
+    (void)context;
+
+    for (size_t i=0; i<head->numPHEntries; ++i) {
         if(head->PHEntries[i].p_type == PT_LOAD) {
             Elf64_Phdr * e = &head->PHEntries[i];
             char* dest = (char*)e->p_paddr + head->delta;
-            printf_log(LOG_DEBUG, "Re-loading block #%i @%p (0x%lx/0x%lx)\n", i, dest, e->p_filesz, e->p_memsz);
+            printf_log(LOG_DEBUG, "Re-loading block #%zu @%p (0x%lx/0x%lx)\n", i, dest, e->p_filesz, e->p_memsz);
             int ret = fseeko64(f, e->p_offset, SEEK_SET);
-            if(ret==-1) {printf_log(LOG_NONE, "Fail to (re)seek PT_LOAD part #%d (offset=%ld, errno=%d/%s)\n", i, e->p_offset, errno, strerror(errno)); return 1;}
+            if(ret==-1) {printf_log(LOG_NONE, "Fail to (re)seek PT_LOAD part #%zu (offset=%ld, errno=%d/%s)\n", i, e->p_offset, errno, strerror(errno)); return 1;}
             if(e->p_filesz) {
                 ssize_t r = -1;
                 #ifdef DYNAREC
@@ -337,7 +339,7 @@ int ReloadElfMemory(FILE* f, box64context_t* context, elfheader_t* head)
                     unprotectDB((uintptr_t)dest, e->p_memsz);
                 #endif
                 if((r=fread(dest, e->p_filesz, 1, f))!=1) {
-                    printf_log(LOG_NONE, "Fail to (re)read PT_LOAD part #%d (dest=%p, size=%ld, return=%ld, feof=%d/ferror=%d/%s)\n", i, dest, e->p_filesz, r, feof(f), ferror(f), strerror(ferror(f)));
+                    printf_log(LOG_NONE, "Fail to (re)read PT_LOAD part #%zu (dest=%p, size=%ld, return=%ld, feof=%d/ferror=%d/%s)\n", i, dest, e->p_filesz, r, feof(f), ferror(f), strerror(ferror(f)));
                     return 1;
                 }
             }
@@ -458,12 +460,10 @@ int RelocateElfREL(lib_t *maplib, lib_t *local_maplib, elfheader_t* head, int cn
                     }
                     printf_log(LOG_DUMP, "Apply %s R_X86_64_COPY @%p with sym=%s, @%p size=%ld (", (bind==STB_LOCAL)?"Local":"Global", p, symname, (void*)offs, sym->st_size);
                     memmove(p, (void*)offs, sym->st_size);
-                    if(LOG_DUMP<=box64_log) {
-                        uint32_t*k = (uint32_t*)p;
-                        for (int i=0; i<((sym->st_size>128)?128:sym->st_size); i+=4, ++k)
-                            printf_log(LOG_DUMP, "%s0x%08X", i?" ":"", *k);
-                        printf_log(LOG_DUMP, "%s)\n", (sym->st_size>128)?" ...":"");
-                    }
+                    uint32_t *k = (uint32_t*)p;
+                    for (unsigned j=0; j<((sym->st_size>128u)?128u:sym->st_size); j+=4, ++k)
+                        printf_log(LOG_DUMP, "%s0x%08X", j?" ":"", *k);
+                    printf_log(LOG_DUMP, "%s)\n", (sym->st_size>128u)?" ...":"");
                 } else {
                     printf_log(LOG_NONE, "Error: Symbol %s not found, cannot apply R_X86_64_COPY @%p (%p) in %s\n", symname, p, *(void**)p, head->name);
                 }
@@ -475,7 +475,7 @@ int RelocateElfREL(lib_t *maplib, lib_t *local_maplib, elfheader_t* head, int cn
             case R_X86_64_64:
                 if (!offs) {
                     printf_log(LOG_NONE, "Error: Symbol %s not found, cannot apply R_X86_64_64 @%p (%p) in %s\n", symname, p, *(void**)p, head->name);
-//                    return -1;
+                    // return -1;
                 } else {
                     printf_log(LOG_DUMP, "Apply %s R_X86_64_64 @%p with sym=%s (%p -> %p)\n", (bind==STB_LOCAL)?"Local":"Global", p, symname, *(void**)p, (void*)(offs+*(uint64_t*)p));
                     *p += offs;
@@ -496,7 +496,7 @@ int RelocateElfREL(lib_t *maplib, lib_t *local_maplib, elfheader_t* head, int cn
                         } else {
                             printf_log(LOG_NONE, "Error: Symbol %s not found, cannot apply R_X86_64_JUMP_SLOT @%p (%p) in %s\n", symname, p, *(void**)p, head->name);
                         }
-    //                    return -1;
+                        // return -1;
                     } else {
                         if(p) {
                             printf_log(LOG_DUMP, "Apply %s R_X86_64_JUMP_SLOT @%p with sym=%s (%p -> %p)\n", (bind==STB_LOCAL)?"Local":"Global", p, symname, *(void**)p, (void*)offs);
@@ -512,7 +512,7 @@ int RelocateElfREL(lib_t *maplib, lib_t *local_maplib, elfheader_t* head, int cn
                 break;
             #endif
             default:
-                printf_log(LOG_INFO, "Warning, don't know of to handle rel #%d %s (%p)\n", i, DumpRelType(ELF64_R_TYPE(rel[i].r_info)), p);
+                printf_log(LOG_INFO, "Warning, don't know how to handle rel #%d %s (%p)\n", i, DumpRelType(ELF64_R_TYPE(rel[i].r_info)), p);
         }
     }
     return 0;
@@ -627,7 +627,7 @@ int RelocateElfRELA(lib_t *maplib, lib_t *local_maplib, elfheader_t* head, int c
                         } else {
                             printf_log(LOG_NONE, "Error: Symbol %s not found, cannot apply R_X86_64_JUMP_SLOT @%p (%p) in %s\n", symname, p, *(void**)p, head->name);
                         }
-    //                    return -1;
+                        // return -1;
                     } else {
                         if(p) {
                             printf_log(LOG_DUMP, "Apply %s R_X86_64_JUMP_SLOT @%p with sym=%s (%p -> %p)\n", 
@@ -646,7 +646,7 @@ int RelocateElfRELA(lib_t *maplib, lib_t *local_maplib, elfheader_t* head, int c
             case R_X86_64_64:
                 if (!offs) {
                     printf_log(LOG_NONE, "Error: Symbol %s not found, cannot apply R_X86_64_64 @%p (%p) in %s\n", symname, p, *(void**)p, head->name);
-//                    return -1;
+                    // return -1;
                 } else {
                     printf_log(LOG_DUMP, "Apply %s R_X86_64_64 @%p with sym=%s addend=0x%lx (%p -> %p)\n", 
                         (bind==STB_LOCAL)?"Local":"Global", p, symname, rela[i].r_addend, *(void**)p, (void*)(offs+rela[i].r_addend/*+*(uint64_t*)p*/));
@@ -701,7 +701,7 @@ int RelocateElfRELA(lib_t *maplib, lib_t *local_maplib, elfheader_t* head, int c
                     } else {
                         printf_log(LOG_NONE, "Error: Symbol %s not found, cannot apply R_X86_64_DTPOFF64 @%p (%p) in %s\n", symname, p, *(void**)p, head->name);
                     }
-//                    return -1;
+                    // return -1;
                 } else {
                     if(h_tls)
                         offs = sym->st_value;
@@ -755,7 +755,7 @@ int RelocateElfPlt(lib_t *maplib, lib_t *local_maplib, elfheader_t* head)
             if(RelocateElfRELA(maplib, local_maplib, head, cnt, (Elf64_Rela *)(head->jmprel + head->delta)))
                 return -1;
         }
-        if(pltResolver==~0) {
+        if(pltResolver==~0u) {
             pltResolver = AddBridge(my_context->system, vFE, PltResolver, 0, "PltResolver");
         }
         if(head->pltgot) {
@@ -772,7 +772,7 @@ int RelocateElfPlt(lib_t *maplib, lib_t *local_maplib, elfheader_t* head)
     return 0;
 }
 
-void CalcStack(elfheader_t* elf, uint32_t* stacksz, int* stackalign)
+void CalcStack(elfheader_t* elf, uint64_t* stacksz, size_t* stackalign)
 {
     if(*stacksz < elf->stacksz)
         *stacksz = elf->stacksz;
@@ -783,7 +783,7 @@ void CalcStack(elfheader_t* elf, uint32_t* stacksz, int* stackalign)
 Elf64_Sym* GetFunction(elfheader_t* h, const char* name)
 {
     // TODO: create a hash on named to avoid this loop
-    for (int i=0; i<h->numSymTab; ++i) {
+    for (size_t i=0; i<h->numSymTab; ++i) {
         int type = ELF64_ST_TYPE(h->SymTab[i].st_info);
         if(type==STT_FUNC) {
             const char * symname = h->StrTab+h->SymTab[i].st_name;
@@ -797,9 +797,9 @@ Elf64_Sym* GetFunction(elfheader_t* h, const char* name)
 
 Elf64_Sym* GetElfObject(elfheader_t* h, const char* name)
 {
-    for (int i=0; i<h->numSymTab; ++i) {
+    for (size_t i=0; i<h->numSymTab; ++i) {
         int type = ELF64_ST_TYPE(h->SymTab[i].st_info);
-        if(/*h->SymTab[i].st_info == 16*/type==STT_OBJECT) {
+        if(type==STT_OBJECT) {
             const char * symname = h->StrTab+h->SymTab[i].st_name;
             if(strcmp(symname, name)==0) {
                 return h->SymTab+i;
@@ -819,6 +819,7 @@ uintptr_t GetFunctionAddress(elfheader_t* h, const char* name)
 
 uintptr_t GetEntryPoint(lib_t* maplib, elfheader_t* h)
 {
+    (void)maplib;
     uintptr_t ep = h->entrypoint + h->delta;
     printf_log(LOG_DEBUG, "Entry Point is %p\n", (void*)ep);
     if(box64_log>=LOG_DUMP) {
@@ -829,22 +830,6 @@ uintptr_t GetEntryPoint(lib_t* maplib, elfheader_t* h)
             sz = lastbyte - ep;
         DumpBinary((char*)ep, sz);
     }
-    /*
-    // but instead of regular entrypoint, lets grab "main", it will be easier to manage I guess
-    uintptr_t m = FindSymbol(maplib, "main");
-    if(m) {
-        ep = m;
-        printf_log(LOG_DEBUG, "Using \"main\" as Entry Point @%p\n", ep);
-        if(box64_log>=LOG_DUMP) {
-            printf_log(LOG_DUMP, "(short) Dump of Entry point\n");
-            int sz = 64;
-            uintptr_t lastbyte = GetLastByte(h);
-            if (ep + sz >  lastbyte)
-                sz = lastbyte - ep;
-            DumpBinary((char*)ep, sz);
-        }
-    }
-    */
     return ep;
 }
 
@@ -855,8 +840,8 @@ uintptr_t GetLastByte(elfheader_t* h)
 
 void AddSymbols(lib_t *maplib, kh_mapsymbols_t* mapsymbols, kh_mapsymbols_t* weaksymbols, kh_mapsymbols_t* localsymbols, elfheader_t* h)
 {
-    printf_log(LOG_DUMP, "Will look for Symbol to add in SymTable(%d)\n", h->numSymTab);
-    for (int i=0; i<h->numSymTab; ++i) {
+    printf_log(LOG_DUMP, "Will look for Symbol to add in SymTable(%zu)\n", h->numSymTab);
+    for (size_t i=0; i<h->numSymTab; ++i) {
         const char * symname = h->StrTab+h->SymTab[i].st_name;
         int bind = ELF64_ST_BIND(h->SymTab[i].st_info);
         int type = ELF64_ST_TYPE(h->SymTab[i].st_info);
@@ -866,8 +851,8 @@ void AddSymbols(lib_t *maplib, kh_mapsymbols_t* mapsymbols, kh_mapsymbols_t* wea
             if((bind==10/*STB_GNU_UNIQUE*/ || (bind==STB_GLOBAL && type==STT_FUNC)) && FindGlobalSymbol(maplib, symname))
                 continue;
             uintptr_t offs = (type==STT_TLS)?h->SymTab[i].st_value:(h->SymTab[i].st_value + h->delta);
-            uint32_t sz = h->SymTab[i].st_size;
-            printf_log(LOG_DUMP, "Adding Symbol(bind=%s) \"%s\" with offset=%p sz=%d\n", (bind==STB_LOCAL)?"LOCAL":((bind==STB_WEAK)?"WEAK":"GLOBAL"), symname, (void*)offs, sz);
+            uint64_t sz = h->SymTab[i].st_size;
+            printf_log(LOG_DUMP, "Adding Symbol(bind=%s) \"%s\" with offset=%p sz=%zu\n", (bind==STB_LOCAL)?"LOCAL":((bind==STB_WEAK)?"WEAK":"GLOBAL"), symname, (void*)offs, sz);
             if(bind==STB_LOCAL)
                 AddSymbol(localsymbols, symname, offs, sz);
             else    // add in local and global map 
@@ -879,8 +864,8 @@ void AddSymbols(lib_t *maplib, kh_mapsymbols_t* mapsymbols, kh_mapsymbols_t* wea
         }
     }
     
-    printf_log(LOG_DUMP, "Will look for Symbol to add in DynSym (%d)\n", h->numDynSym);
-    for (int i=0; i<h->numDynSym; ++i) {
+    printf_log(LOG_DUMP, "Will look for Symbol to add in DynSym (%zu)\n", h->numDynSym);
+    for (size_t i=0; i<h->numDynSym; ++i) {
         const char * symname = h->DynStr+h->DynSym[i].st_name;
         int bind = ELF64_ST_BIND(h->DynSym[i].st_info);
         int type = ELF64_ST_TYPE(h->DynSym[i].st_info);
@@ -891,8 +876,8 @@ void AddSymbols(lib_t *maplib, kh_mapsymbols_t* mapsymbols, kh_mapsymbols_t* wea
             if((bind==10/*STB_GNU_UNIQUE*/ || (bind==STB_GLOBAL && type==STT_FUNC)) && FindGlobalSymbol(maplib, symname))
                 continue;
             uintptr_t offs = (type==STT_TLS)?h->DynSym[i].st_value:(h->DynSym[i].st_value + h->delta);
-            uint32_t sz = h->DynSym[i].st_size;
-            printf_log(LOG_DUMP, "Adding Symbol(bind=%s) \"%s\" with offset=%p sz=%d\n", (bind==STB_LOCAL)?"LOCAL":((bind==STB_WEAK)?"WEAK":"GLOBAL"), symname, (void*)offs, sz);
+            uint64_t sz = h->DynSym[i].st_size;
+            printf_log(LOG_DUMP, "Adding Symbol(bind=%s) \"%s\" with offset=%p sz=%zu\n", (bind==STB_LOCAL)?"LOCAL":((bind==STB_WEAK)?"WEAK":"GLOBAL"), symname, (void*)offs, sz);
             if(bind==STB_LOCAL)
                 AddSymbol(localsymbols, symname, offs, sz);
             else // add in local and global map 
@@ -924,7 +909,7 @@ int LoadNeededLibs(elfheader_t* h, lib_t *maplib, needed_libs_t* neededlibs, lib
 {
     DumpDynamicRPath(h);
     // update RPATH first
-    for (int i=0; i<h->numDynamic; ++i)
+    for (size_t i=0; i<h->numDynamic; ++i)
         if(h->Dynamic[i].d_tag==DT_RPATH || h->Dynamic[i].d_tag==DT_RUNPATH) {
             char *rpathref = h->DynStrTab+h->delta+h->Dynamic[i].d_un.d_val;
             char* rpath = rpathref;
@@ -970,7 +955,7 @@ int LoadNeededLibs(elfheader_t* h, lib_t *maplib, needed_libs_t* neededlibs, lib
         h->neededlibs = neededlibs;
 
     DumpDynamicNeeded(h);
-    for (int i=0; i<h->numDynamic; ++i)
+    for (size_t i=0; i<h->numDynamic; ++i)
         if(h->Dynamic[i].d_tag==DT_NEEDED) {
             char *needed = h->DynStrTab+h->delta+h->Dynamic[i].d_un.d_val;
             // TODO: Add LD_LIBRARY_PATH and RPATH handling
@@ -987,7 +972,7 @@ int ElfCheckIfUseTCMallocMinimal(elfheader_t* h)
 {
     if(!h)
         return 0;
-    for (int i=0; i<h->numDynamic; ++i)
+    for (size_t i=0; i<h->numDynamic; ++i)
         if(h->Dynamic[i].d_tag==DT_NEEDED) {
             char *needed = h->DynStrTab+h->delta+h->Dynamic[i].d_un.d_val;
             if(!strcmp(needed, "libtcmalloc_minimal.so.4")) // tcmalloc needs to be the 1st lib loaded
@@ -1020,9 +1005,9 @@ void RunElfInit(elfheader_t* h, x64emu_t *emu)
     printf_log(LOG_DEBUG, "Done Init for %s\n", ElfName(h));
     // and check init array now
     Elf64_Addr *addr = (Elf64_Addr*)(h->initarray + h->delta);
-    for (int i=0; i<h->initarray_sz; ++i) {
+    for (size_t i=0; i<h->initarray_sz; ++i) {
         if(addr[i]) {
-            printf_log(LOG_DEBUG, "Calling Init[%d] for %s @%p\n", i, ElfName(h), (void*)addr[i]);
+            printf_log(LOG_DEBUG, "Calling Init[%zu] for %s @%p\n", i, ElfName(h), (void*)addr[i]);
             RunFunctionWithEmu(emu, 0, (uintptr_t)addr[i], 3, context->argc, context->argv, context->envv);
         }
     }
@@ -1116,18 +1101,18 @@ elfheader_t* FindElfAddress(box64context_t *context, uintptr_t addr)
     return NULL;
 }
 
-const char* FindNearestSymbolName(elfheader_t* h, void* p, uintptr_t* start, uint32_t* sz)
+const char* FindNearestSymbolName(elfheader_t* h, void* p, uintptr_t* start, uint64_t* sz)
 {
     uintptr_t addr = (uintptr_t)p;
 
     uint32_t distance = 0x7fffffff;
     const char* ret = NULL;
     uintptr_t s = 0;
-    uint32_t size = 0;
+    uint64_t size = 0;
     if(!h || h->fini_done)
         return ret;
 
-    for (int i=0; i<h->numSymTab && distance!=0; ++i) {   
+    for (size_t i=0; i<h->numSymTab && distance!=0; ++i) {   
         const char * symname = h->StrTab+h->SymTab[i].st_name;
         uintptr_t offs = h->SymTab[i].st_value + h->delta;
 
@@ -1140,7 +1125,7 @@ const char* FindNearestSymbolName(elfheader_t* h, void* p, uintptr_t* start, uin
             }
         }
     }
-    for (int i=0; i<h->numDynSym && distance!=0; ++i) {   
+    for (size_t i=0; i<h->numDynSym && distance!=0; ++i) {   
         const char * symname = h->DynStr+h->DynSym[i].st_name;
         uintptr_t offs = h->DynSym[i].st_value + h->delta;
 
@@ -1284,7 +1269,7 @@ EXPORT int my_dl_iterate_phdr(x64emu_t *emu, void* F, void *data) {
 void ResetSpecialCaseMainElf(elfheader_t* h)
 {
     Elf64_Sym *sym = NULL;
-     for (int i=0; i<h->numDynSym; ++i) {
+    for (size_t i=0; i<h->numDynSym; ++i) {
         if(h->DynSym[i].st_info == 17) {
             sym = h->DynSym+i;
             const char * symname = h->DynStr+sym->st_name;
@@ -1324,7 +1309,7 @@ void CreateMemorymapFile(box64context_t* context, int fd)
         st.st_ino = 0;
     }
 
-    for (int i=0; i<h->numPHEntries; ++i) {
+    for (size_t i=0; i<h->numPHEntries; ++i) {
         if (h->PHEntries[i].p_memsz == 0) continue;
 
         sprintf(buff, "%016lx-%016lx %c%c%c%c %016lx %02x:%02x %ld %s\n", (uintptr_t)h->PHEntries[i].p_vaddr + h->delta,
diff --git a/src/elfs/elfloader_private.h b/src/elfs/elfloader_private.h
index a02fcca3..fa488845 100755
--- a/src/elfs/elfloader_private.h
+++ b/src/elfs/elfloader_private.h
@@ -13,23 +13,23 @@ typedef struct needed_libs_s needed_libs_t;
 struct elfheader_s {
     char*       name;
     char*       path;   // Resolved path to file
-    int         numPHEntries;
+    size_t      numPHEntries;
     Elf64_Phdr  *PHEntries;
-    int         numSHEntries;
+    size_t      numSHEntries;
     Elf64_Shdr  *SHEntries;
-    int         SHIdx;
-    int         numSST;
+    size_t      SHIdx;
+    size_t      numSST;
     char*       SHStrTab;
     char*       StrTab;
     Elf64_Sym*  SymTab;
-    int         numSymTab;
+    size_t      numSymTab;
     char*       DynStr;
     Elf64_Sym*  DynSym;
-    int         numDynSym;
+    size_t      numDynSym;
     Elf64_Dyn*  Dynamic;
-    int         numDynamic;
+    size_t      numDynamic;
     char*       DynStrTab;
-    int         szDynStrTab;
+    size_t      szDynStrTab;
     int         e_type;
 
     intptr_t    delta;  // should be 0
@@ -37,19 +37,19 @@ struct elfheader_s {
     uintptr_t   entrypoint;
     uintptr_t   initentry;
     uintptr_t   initarray;
-    int         initarray_sz;
+    size_t      initarray_sz;
     uintptr_t   finientry;
     uintptr_t   finiarray;
-    int         finiarray_sz;
+    size_t      finiarray_sz;
 
     uintptr_t   rel;
-    int         relsz;
+    size_t      relsz;
     int         relent;
     uintptr_t   rela;
-    int         relasz;
+    size_t      relasz;
     int         relaent;
     uintptr_t   jmprel;
-    int         pltsz;
+    size_t      pltsz;
     int         pltent;
     uint64_t    pltrel;
     uintptr_t   gotplt;
@@ -60,18 +60,18 @@ struct elfheader_s {
     uintptr_t   plt;
     uintptr_t   plt_end;
     uintptr_t   text;
-    int         textsz;
+    size_t      textsz;
 
     uintptr_t   paddr;
     uintptr_t   vaddr;
-    int         align;
+    size_t      align;
     uint64_t    memsz;
     uint64_t    stacksz;
-    int         stackalign;
-    uint32_t    tlssize;
-    int         tlsalign;
+    size_t      stackalign;
+    uint64_t    tlssize;
+    size_t      tlsalign;
 
-    int32_t     tlsbase;    // the base of the tlsdata in the global tlsdata (always negative)
+    int64_t     tlsbase;    // the base of the tlsdata in the global tlsdata (always negative)
 
     int         init_done;
     int         fini_done;
@@ -133,4 +133,4 @@ struct elfheader_s {
 
 elfheader_t* ParseElfHeader(FILE* f, const char* name, int exec);
 
-#endif //__ELFLOADER_PRIVATE_H_
\ No newline at end of file
+#endif //__ELFLOADER_PRIVATE_H_
diff --git a/src/elfs/elfparser.c b/src/elfs/elfparser.c
index dcca49b3..7d5600ea 100755
--- a/src/elfs/elfparser.c
+++ b/src/elfs/elfparser.c
@@ -43,7 +43,7 @@ int FindSection(Elf64_Shdr *s, int n, char* SHStrTab, const char* name)
     return 0;
 }
 
-void LoadNamedSection(FILE *f, Elf64_Shdr *s, int size, char* SHStrTab, const char* name, const char* clearname, uint32_t type, void** what, int* num)
+void LoadNamedSection(FILE *f, Elf64_Shdr *s, int size, char* SHStrTab, const char* name, const char* clearname, uint32_t type, void** what, size_t* num)
 {
     int n = FindSection(s, size, SHStrTab, name);
     printf_log(LOG_DEBUG, "Loading %s (idx = %d)\n", clearname, n);
@@ -141,7 +141,7 @@ elfheader_t* ParseElfHeader(FILE* f, const char* name, int exec)
             h->numSHEntries = section.sh_size;
         }
         // now read all section headers
-        printf_log(LOG_DEBUG, "Read %d Section header\n", h->numSHEntries);
+        printf_log(LOG_DEBUG, "Read %zu Section header\n", h->numSHEntries);
         h->SHEntries = (Elf64_Shdr*)calloc(h->numSHEntries, sizeof(Elf64_Shdr));
         fseeko64(f, header.e_shoff ,SEEK_SET);
         if(fread(h->SHEntries, sizeof(Elf64_Shdr), h->numSHEntries, f)!=h->numSHEntries) {
@@ -157,7 +157,7 @@ elfheader_t* ParseElfHeader(FILE* f, const char* name, int exec)
         }
     }
 
-    printf_log(LOG_DEBUG, "Read %d Program header\n", h->numPHEntries);
+    printf_log(LOG_DEBUG, "Read %zu Program header\n", h->numPHEntries);
     h->PHEntries = (Elf64_Phdr*)calloc(h->numPHEntries, sizeof(Elf64_Phdr));
     fseeko64(f, header.e_phoff ,SEEK_SET);
     if(fread(h->PHEntries, sizeof(Elf64_Phdr), h->numPHEntries, f)!=h->numPHEntries) {
@@ -172,12 +172,12 @@ elfheader_t* ParseElfHeader(FILE* f, const char* name, int exec)
             h->SHIdx = h->SHEntries[0].sh_link;
         }
         if(h->SHIdx > h->numSHEntries) {
-            printf_log(LOG_INFO, "Incoherent Section String Table Index : %d / %d\n", h->SHIdx, h->numSHEntries);
+            printf_log(LOG_INFO, "Incoherent Section String Table Index : %zu / %zu\n", h->SHIdx, h->numSHEntries);
             FreeElfHeader(&h);
             return NULL;
         }
         // load Section table
-        printf_log(LOG_DEBUG, "Loading Sections Table String (idx = %d)\n", h->SHIdx);
+        printf_log(LOG_DEBUG, "Loading Sections Table String (idx = %zu)\n", h->SHIdx);
         if(LoadSH(f, h->SHEntries+h->SHIdx, (void*)&h->SHStrTab, ".shstrtab", SHT_STRTAB)) {
             FreeElfHeader(&h);
             return NULL;
@@ -193,7 +193,7 @@ elfheader_t* ParseElfHeader(FILE* f, const char* name, int exec)
         // grab DT_REL & DT_RELA stuffs
         // also grab the DT_STRTAB string table
         {
-            for (int i=0; i<h->numDynamic; ++i) {
+            for (size_t i=0; i<h->numDynamic; ++i) {
                 if(h->Dynamic[i].d_tag == DT_REL)
                     h->rel = h->Dynamic[i].d_un.d_ptr;
                 else if(h->Dynamic[i].d_tag == DT_RELSZ)
@@ -221,19 +221,19 @@ elfheader_t* ParseElfHeader(FILE* f, const char* name, int exec)
             }
             if(h->rel) {
                 if(h->relent != sizeof(Elf64_Rel)) {
-                    printf_log(LOG_NONE, "Rel Table Entry size invalid (0x%x should be 0x%lx)\n", h->relent, sizeof(Elf64_Rel));
+                    printf_log(LOG_NONE, "Rel Table Entry size invalid (0x%x should be 0x%zx)\n", h->relent, sizeof(Elf64_Rel));
                     FreeElfHeader(&h);
                     return NULL;
                 }
-                printf_log(LOG_DEBUG, "Rel Table @%p (0x%x/0x%x)\n", (void*)h->rel, h->relsz, h->relent);
+                printf_log(LOG_DEBUG, "Rel Table @%p (0x%zx/0x%x)\n", (void*)h->rel, h->relsz, h->relent);
             }
             if(h->rela) {
                 if(h->relaent != sizeof(Elf64_Rela)) {
-                    printf_log(LOG_NONE, "RelA Table Entry size invalid (0x%x should be 0x%lx)\n", h->relaent, sizeof(Elf64_Rela));
+                    printf_log(LOG_NONE, "RelA Table Entry size invalid (0x%x should be 0x%zx)\n", h->relaent, sizeof(Elf64_Rela));
                     FreeElfHeader(&h);
                     return NULL;
                 }
-                printf_log(LOG_DEBUG, "RelA Table @%p (0x%x/0x%x)\n", (void*)h->rela, h->relasz, h->relaent);
+                printf_log(LOG_DEBUG, "RelA Table @%p (0x%zx/0x%x)\n", (void*)h->rela, h->relasz, h->relaent);
             }
             if(h->jmprel) {
                 if(h->pltrel == DT_REL) {
@@ -241,16 +241,16 @@ elfheader_t* ParseElfHeader(FILE* f, const char* name, int exec)
                 } else if(h->pltrel == DT_RELA) {
                     h->pltent = sizeof(Elf64_Rela);
                 } else {
-                    printf_log(LOG_NONE, "PLT Table type is unknown (size = 0x%x, type=%ld)\n", h->pltsz, h->pltrel);
+                    printf_log(LOG_NONE, "PLT Table type is unknown (size = 0x%zx, type=%ld)\n", h->pltsz, h->pltrel);
                     FreeElfHeader(&h);
                     return NULL;
                 }
                 if((h->pltsz / h->pltent)*h->pltent != h->pltsz) {
-                    printf_log(LOG_NONE, "PLT Table Entry size invalid (0x%x, ent=0x%x, type=%ld)\n", h->pltsz, h->pltent, h->pltrel);
+                    printf_log(LOG_NONE, "PLT Table Entry size invalid (0x%zx, ent=0x%x, type=%ld)\n", h->pltsz, h->pltent, h->pltrel);
                     FreeElfHeader(&h);
                     return NULL;
                 }
-                printf_log(LOG_DEBUG, "PLT Table @%p (type=%ld 0x%x/0x%0x)\n", (void*)h->jmprel, h->pltrel, h->pltsz, h->pltent);
+                printf_log(LOG_DEBUG, "PLT Table @%p (type=%ld 0x%zx/0x%0x)\n", (void*)h->jmprel, h->pltrel, h->pltsz, h->pltent);
             }
             if(h->DynStrTab && h->szDynStrTab) {
                 //DumpDynamicNeeded(h); cannot dump now, it's not loaded yet
@@ -286,7 +286,7 @@ elfheader_t* ParseElfHeader(FILE* f, const char* name, int exec)
         if(ii) {
             h->initarray_sz = h->SHEntries[ii].sh_size / sizeof(Elf64_Addr);
             h->initarray = (uintptr_t)(h->SHEntries[ii].sh_addr);
-            printf_log(LOG_DEBUG, "The .init_array is at address %p, and have %d elements\n", (void*)h->initarray, h->initarray_sz);
+            printf_log(LOG_DEBUG, "The .init_array is at address %p, and have %zu elements\n", (void*)h->initarray, h->initarray_sz);
         }
         // look for .fini entry point
         ii = FindSection(h->SHEntries, h->numSHEntries, h->SHStrTab, ".fini");
@@ -299,14 +299,14 @@ elfheader_t* ParseElfHeader(FILE* f, const char* name, int exec)
         if(ii) {
             h->finiarray_sz = h->SHEntries[ii].sh_size / sizeof(Elf64_Addr);
             h->finiarray = (uintptr_t)(h->SHEntries[ii].sh_addr);
-            printf_log(LOG_DEBUG, "The .fini_array is at address %p, and have %d elements\n", (void*)h->finiarray, h->finiarray_sz);
+            printf_log(LOG_DEBUG, "The .fini_array is at address %p, and have %zu elements\n", (void*)h->finiarray, h->finiarray_sz);
         }
         // grab .text for main code
         ii = FindSection(h->SHEntries, h->numSHEntries, h->SHStrTab, ".text");
         if(ii) {
             h->text = (uintptr_t)(h->SHEntries[ii].sh_addr);
             h->textsz = h->SHEntries[ii].sh_size;
-            printf_log(LOG_DEBUG, "The .text is at address %p, and is %d big\n", (void*)h->text, h->textsz);
+            printf_log(LOG_DEBUG, "The .text is at address %p, and is %zu big\n", (void*)h->text, h->textsz);
         }
 
         LoadNamedSection(f, h->SHEntries, h->numSHEntries, h->SHStrTab, ".dynstr", "DynSym Strings", SHT_STRTAB, (void**)&h->DynStr, NULL);
diff --git a/src/emu/x64emu.c b/src/emu/x64emu.c
index c1f3946c..75ce18fd 100755
--- a/src/emu/x64emu.c
+++ b/src/emu/x64emu.c
@@ -109,6 +109,7 @@ EXPORTDYN
 void SetupX64Emu(x64emu_t *emu)
 {
     printf_log(LOG_DEBUG, "Setup X86_64 Emu\n");
+    (void)emu;  // Not doing much here...
 }
 
 #ifdef HAVE_TRACE
@@ -130,6 +131,8 @@ void SetTraceEmu(uintptr_t start, uintptr_t end)
 
 void AddCleanup(x64emu_t *emu, void *p)
 {
+    (void)emu;
+    
     if(my_context->clean_sz == my_context->clean_cap) {
         my_context->clean_cap += 4;
         my_context->cleanups = (cleanup_t*)realloc(my_context->cleanups, sizeof(cleanup_t)*my_context->clean_cap);
@@ -141,6 +144,8 @@ void AddCleanup(x64emu_t *emu, void *p)
 
 void AddCleanup1Arg(x64emu_t *emu, void *p, void* a)
 {
+    (void)emu;
+    
     if(my_context->clean_sz == my_context->clean_cap) {
         my_context->clean_cap += 4;
         my_context->cleanups = (cleanup_t*)realloc(my_context->cleanups, sizeof(cleanup_t)*my_context->clean_cap);
@@ -473,7 +478,9 @@ void EmuCall(x64emu_t* emu, uintptr_t addr)
 
 uint64_t ReadTSC(x64emu_t* emu)
 {
-    //TODO: implement hardware counter read?
+    (void)emu;
+    
+    //TODO: implement hardware counter read? (only available in kernel space?)
     // Read the TimeStamp Counter as 64bits.
     // this is supposed to be the number of instructions executed since last reset
     // fall back to gettime...
diff --git a/src/emu/x64int3.c b/src/emu/x64int3.c
index 21d7d10b..4c9ceb3d 100755
--- a/src/emu/x64int3.c
+++ b/src/emu/x64int3.c
@@ -161,7 +161,7 @@ void x64Int3(x64emu_t* emu)
                 pthread_mutex_lock(&emu->context->mutex_trace);
                 if(post)
                     switch(post) {
-                    case 1: snprintf(buff2, 63, " [%d sec %d nsec]", pu32?pu32[0]:-1, pu32?pu32[1]:-1);
+                    case 1: snprintf(buff2, 63, " [%d sec %d nsec]", pu32?pu32[0]:~0u, pu32?pu32[1]:~0u);
                             break;
                     case 2: snprintf(buff2, 63, "(%s)", R_RAX?((char*)R_RAX):"nil");
                             break;
@@ -175,8 +175,8 @@ void x64Int3(x64emu_t* emu)
                                 snprintf(buff2, 63, " size=%dx%d, pitch=%d, pixels=%p", p[2], p[3], p[4], p+5);
                             else
                                 snprintf(buff2, 63, "NULL Surface");
-                            }
-                            break;
+                        }
+                        break;
                 }
                 if(perr==1 && ((int)R_EAX)<0)
                     snprintf(buff3, 63, " (errno=%d:\"%s\")", errno, strerror(errno));
@@ -199,4 +199,4 @@ void x64Int3(x64emu_t* emu)
 int GetTID()
 {
     return syscall(SYS_gettid);
-}
\ No newline at end of file
+}
diff --git a/src/emu/x64primop.h b/src/emu/x64primop.h
index e42c7062..ae2f9a02 100755
--- a/src/emu/x64primop.h
+++ b/src/emu/x64primop.h
@@ -235,21 +235,25 @@ static inline uint64_t neg64(x64emu_t *emu, uint64_t s)
 
 static inline uint8_t not8(x64emu_t *emu, uint8_t s)
 {
+	(void)emu; // No flags affected
 	return ~s;
 }
 
 static inline uint16_t not16(x64emu_t *emu, uint16_t s)
 {
+	(void)emu; // No flags affected
 	return ~s;
 }
 
 static inline uint32_t not32(x64emu_t *emu, uint32_t s)
 {
+	(void)emu; // No flags affected
 	return ~s;
 }
 
 static inline uint64_t not64(x64emu_t *emu, uint64_t s)
 {
+	(void)emu; // No flags affected
 	return ~s;
 }
 
diff --git a/src/emu/x64run64.c b/src/emu/x64run64.c
index 3e8bdbff..ae4dbe63 100644
--- a/src/emu/x64run64.c
+++ b/src/emu/x64run64.c
@@ -26,9 +26,9 @@ int Run64(x64emu_t *emu, rex_t rex)
 {

     uint8_t opcode;

     uint8_t nextop;

-    uint8_t tmp8u;

-    int16_t tmp16s;

-    uint16_t tmp16u;

+    uint8_t tmp8u;   (void)tmp8u;

+    int16_t tmp16s;  (void)tmp16s;

+    uint16_t tmp16u; (void)tmp16u;

     int32_t tmp32s;

     uint32_t tmp32u;

     uint64_t tmp64u;

@@ -318,4 +318,4 @@ int Run64(x64emu_t *emu, rex_t rex)
             return 1;

     }

     return 0;

-}
\ No newline at end of file
+}

diff --git a/src/emu/x64run6766.c b/src/emu/x64run6766.c
index 256a2671..2702012c 100644
--- a/src/emu/x64run6766.c
+++ b/src/emu/x64run6766.c
@@ -27,16 +27,18 @@
 
 int Run6766(x64emu_t *emu, rex_t rex, int rep)
 {
+    // Hmmmm....
+    (void)rep;
     uint8_t opcode;
-    uint8_t nextop;
-    int8_t tmp8s;
-    uint8_t tmp8u, tmp8u2;
-    int16_t tmp16s;
-    uint16_t tmp16u, tmp16u2;
-    int32_t tmp32s;
-    int64_t tmp64s;
-    uint64_t tmp64u, tmp64u2, tmp64u3;
-    reg64_t *oped, *opgd;
+    uint8_t nextop;                     (void)nextop;
+    int8_t tmp8s;                       (void)tmp8s;
+    uint8_t tmp8u, tmp8u2;              (void)tmp8u;  (void)tmp8u2;
+    int16_t tmp16s;                     (void)tmp16s;
+    uint16_t tmp16u, tmp16u2;           (void)tmp16u; (void)tmp16u2;
+    int32_t tmp32s;                     (void)tmp32s;
+    int64_t tmp64s;                     (void)tmp64s;
+    uint64_t tmp64u, tmp64u2, tmp64u3;  (void)tmp64u; (void)tmp64u2; (void)tmp64u3;
+    reg64_t *oped, *opgd;               (void)oped;   (void)opgd;
 
     opcode = F8;
 
@@ -47,7 +49,7 @@ int Run6766(x64emu_t *emu, rex_t rex, int rep)
         rep = opcode-0xF1;
         opcode = F8;
     }
-    // REX prefix before the F0 are ignored
+    // REX prefix before the 66 are ignored
     rex.rex = 0;
     while(opcode>=0x40 && opcode<=0x4f) {
         rex.rex = opcode;
@@ -56,11 +58,11 @@ int Run6766(x64emu_t *emu, rex_t rex, int rep)
 
     switch(opcode) {
 
-    case 0x0F:                              /* more opcdes */
+    case 0x0F:                              /* more opcodes */
         return Run67660F(emu, rex);
 
     default:
         return 1;
     }
     return 0;
-}
\ No newline at end of file
+}
diff --git a/src/emu/x64run67660f.c b/src/emu/x64run67660f.c
index e5a9d1f8..6be0b044 100644
--- a/src/emu/x64run67660f.c
+++ b/src/emu/x64run67660f.c
@@ -26,22 +26,22 @@ int Run67660F(x64emu_t *emu, rex_t rex)
 {
     uint8_t opcode;
     uint8_t nextop;
-    uint8_t tmp8u;
-    int8_t tmp8s;
-    int16_t tmp16s;
-    uint16_t tmp16u;
-    int32_t tmp32s;
-    uint32_t tmp32u;
-    uint64_t tmp64u;
-    reg64_t *oped, *opgd;
-    sse_regs_t *opex, *opgx, eax1, *opex2;
-    mmx87_regs_t *opem, *opgm;
+    int8_t tmp8s;               (void)tmp8s;
+    uint8_t tmp8u;              (void)tmp8u;
+    int16_t tmp16s;             (void)tmp16s;
+    uint16_t tmp16u;            (void)tmp16u;
+    int32_t tmp32s;             (void)tmp32s;
+    uint32_t tmp32u;            (void)tmp32u;
+    int64_t tmp64s;             (void)tmp64s;
+    uint64_t tmp64u;            (void)tmp64u;
+    reg64_t *oped, *opgd;       (void)oped;   (void)opgd;
+    sse_regs_t *opex, *opgx;
 
     opcode = F8;
 
     switch(opcode) {
 
-   case 0x6F:                      /* MOVDQA Gx,Ex */
+    case 0x6F:                      /* MOVDQA Gx,Ex */
         nextop = F8;
         GETEX32(0);
         GETGX;
@@ -49,7 +49,7 @@ int Run67660F(x64emu_t *emu, rex_t rex)
         GX->q[1] = EX->q[1];
         break;
    
-    case 0x76:  /* PCMPEQD Gx,Ex */
+    case 0x76:                      /* PCMPEQD Gx,Ex */
         nextop = F8;
         GETEX32(0);
         GETGX;
@@ -61,4 +61,4 @@ int Run67660F(x64emu_t *emu, rex_t rex)
         return 1;
     }
     return 0;
-}
\ No newline at end of file
+}
diff --git a/src/emu/x64run_private.c b/src/emu/x64run_private.c
index c6a7ac88..4eeddd06 100755
--- a/src/emu/x64run_private.c
+++ b/src/emu/x64run_private.c
@@ -30,6 +30,8 @@
 
 int32_t EXPORT my___libc_start_main(x64emu_t* emu, int *(main) (int, char * *, char * *), int argc, char * * ubp_av, void (*init) (void), void (*fini) (void), void (*rtld_fini) (void), void (* stack_end))
 {
+    (void)argc; (void)ubp_av; (void)fini; (void)rtld_fini; (void)stack_end;
+
     // let's cheat and set all args...
     if(init) {
         PushExit(emu);
@@ -944,7 +946,7 @@ uintptr_t GetSegmentBaseEmu(x64emu_t* emu, int seg)
 const char* getAddrFunctionName(uintptr_t addr)
 {
     static char ret[1000];
-    uint32_t sz = 0;
+    uint64_t sz = 0;
     uintptr_t start = 0;
     const char* symbname = FindNearestSymbolName(FindElfAddress(my_context, addr), (void*)addr, &start, &sz);
     if(symbname && addr>=start && (addr<(start+sz) || !sz)) {
@@ -959,7 +961,7 @@ const char* getAddrFunctionName(uintptr_t addr)
 
 void printFunctionAddr(uintptr_t nextaddr, const char* text)
 {
-    uint32_t sz = 0;
+    uint64_t sz = 0;
     uintptr_t start = 0;
     const char* symbname = FindNearestSymbolName(FindElfAddress(my_context, nextaddr), (void*)nextaddr, &start, &sz);
     if(symbname && nextaddr>=start && (nextaddr<(start+sz) || !sz)) {
@@ -991,6 +993,7 @@ void PrintTrace(x64emu_t* emu, uintptr_t ip, int dynarec)
             my_context->trace_dynarec = dynarec;
         }
 #else
+        (void)dynarec;
         if(my_context->trace_tid != tid) {
             printf_log(LOG_NONE, "Thread %04d|\n", tid);
             my_context->trace_tid = tid;
@@ -1178,6 +1181,8 @@ reg64_t* GetEb32O(x64emu_t *emu, rex_t rex, uint8_t v, uint8_t delta, uintptr_t
 
 reg64_t* GetEw16(x64emu_t *emu, rex_t rex, uint8_t v)
 {
+    (void)rex;
+
     uint8_t m = v&0xC7;    // filter Ed
     if(m>=0xC0) {
          return &emu->regs[(m&0x07)];
@@ -1205,6 +1210,8 @@ reg64_t* GetEw16(x64emu_t *emu, rex_t rex, uint8_t v)
 
 reg64_t* GetEw16off(x64emu_t *emu, rex_t rex, uint8_t v, uintptr_t offset)
 {
+    (void)rex;
+
     uint32_t m = v&0xC7;    // filter Ed
     if(m>=0xC0) {
          return &emu->regs[(m&0x07)];
@@ -1279,6 +1286,8 @@ reg64_t* GetGb(x64emu_t *emu, rex_t rex, uint8_t v)
 
 mmx87_regs_t* GetGm(x64emu_t *emu, rex_t rex, uint8_t v)
 {
+    (void)rex;
+
     uint8_t m = (v&0x38)>>3;
     return &emu->mmx87[m&7];
 }
diff --git a/src/emu/x64run_private.h b/src/emu/x64run_private.h
index e30edbec..525771f2 100755
--- a/src/emu/x64run_private.h
+++ b/src/emu/x64run_private.h
@@ -123,12 +123,6 @@ int RunDF(x64emu_t *emu, rex_t rex);
 int RunF0(x64emu_t *emu, rex_t rex);
 int RunF20F(x64emu_t *emu, rex_t rex);
 int RunF30F(x64emu_t *emu, rex_t rex);
-//void Run66D9(x64emu_t *emu);    // x87
-//void Run6766(x64emu_t *emu);
-//void RunGS(x64emu_t *emu);
-//void RunFS(x64emu_t *emu);
-//void RunFS66(x64emu_t *emu, uintptr_t tlsdata);
-//void RunLock66(x64emu_t *emu);
 
 void x64Syscall(x64emu_t *emu);
 void x64Int3(x64emu_t* emu);
@@ -146,4 +140,4 @@ const char* GetNativeName(void* p);
 void PrintTrace(x64emu_t* emu, uintptr_t ip, int dynarec);
 #endif
 
-#endif //__X86RUN_PRIVATE_H_
\ No newline at end of file
+#endif //__X86RUN_PRIVATE_H_
diff --git a/src/emu/x64rundf.c b/src/emu/x64rundf.c
index 613c90f8..7abf665a 100644
--- a/src/emu/x64rundf.c
+++ b/src/emu/x64rundf.c
@@ -162,7 +162,7 @@ int RunDF(x64emu_t *emu, rex_t rex)
             break;

         case 7: /* FISTP i64 */

             GETED(0);

-            if(STll(0).ref==ST(0).q)

+            if(STll(0).ref==ST(0).sq)

                 ED->sq[0] = STll(0).ll;

             else {

                 if(isgreater(ST0.d, (double)(int64_t)0x7fffffffffffffffLL) || isless(ST0.d, -(double)(int64_t)0x7fffffffffffffffLL) || !isfinite(ST0.d))

@@ -177,4 +177,4 @@ int RunDF(x64emu_t *emu, rex_t rex)
         }

     }

     return 0;

-}
\ No newline at end of file
+}

diff --git a/src/emu/x64runf0.c b/src/emu/x64runf0.c
index 883b35ac..41b51362 100644
--- a/src/emu/x64runf0.c
+++ b/src/emu/x64runf0.c
@@ -31,7 +31,7 @@ int RunF0(x64emu_t *emu, rex_t rex)
     uint8_t opcode;

     uint8_t nextop;

     uint8_t tmp8u;

-    int32_t tmp32s;

+    int32_t tmp32s;             (void)tmp32s;

     uint32_t tmp32u, tmp32u2;

     int64_t tmp64s;

     uint64_t tmp64u, tmp64u2;

@@ -700,4 +700,4 @@ int RunF0(x64emu_t *emu, rex_t rex)
             return 1;

     }

     return 0;

-}
\ No newline at end of file
+}

diff --git a/src/emu/x64syscall.c b/src/emu/x64syscall.c
index e4d167a0..681a5583 100755
--- a/src/emu/x64syscall.c
+++ b/src/emu/x64syscall.c
@@ -57,7 +57,7 @@ int fcntl(int fd, int cmd, ... /* arg */ );
 
 // Syscall table for x86_64 can be found 
 typedef struct scwrap_s {
-    int x64s;
+    uint32_t x64s; // 32 bits?
     int nats;
     int nbpars;
 } scwrap_t;
@@ -135,7 +135,7 @@ struct mmap_arg_struct {
 void EXPORT x64Syscall(x64emu_t *emu)
 {
     RESET_FLAGS(emu);
-    uint32_t s = R_EAX;
+    uint32_t s = R_EAX; // EAX? (syscalls only go up to 547 anyways)
     printf_log(LOG_DEBUG, "%p: Calling syscall 0x%02X (%d) %p %p %p %p %p %p", (void*)R_RIP, s, s, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_R10, (void*)R_R8, (void*)R_R9); 
     // check wrapper first
     int cnt = sizeof(syscallwrap) / sizeof(scwrap_t);
diff --git a/src/emu/x64tls.c b/src/emu/x64tls.c
index 2396eee6..783a1b2f 100755
--- a/src/emu/x64tls.c
+++ b/src/emu/x64tls.c
@@ -123,7 +123,7 @@ uint32_t my_modify_ldt(x64emu_t* emu, int op, thread_area_t* td, int size)
     pthread_setspecific(my_context->segtls[idx].key, (void*)my_context->segtls[idx].base);
     */
     
-    ResetSegmentsCache(thread_get_emu());
+    ResetSegmentsCache(emu);
 
     return 0;
 }
@@ -148,11 +148,11 @@ static tlsdatasize_t* setupTLSData(box64context_t* context)
     uintptr_t dtp = (uintptr_t)ptr+context->tlssize+POS_TLS;
     memcpy((void*)(tlsptr+sizeof(void*)), &dtp, sizeof(void*));
     if(dtsize) {
-        for (size_t i=0; i<context->elfsize; ++i) {
+        for (int i=0; i<context->elfsize; ++i) {
             // set pointer
             dtp = (uintptr_t)ptr + (context->tlssize + GetTLSBase(context->elfs[i]));
-            memcpy((void*)((uintptr_t)ptr+context->tlssize+POS_TLS+i*16), &dtp, sizeof(void*));
-            memcpy((void*)((uintptr_t)ptr+context->tlssize+POS_TLS+i*16+8), &i, sizeof(void*)); // index
+            *(uint64_t*)((uintptr_t)ptr+context->tlssize+POS_TLS+i*16) = dtp;
+            *(uint64_t*)((uintptr_t)ptr+context->tlssize+POS_TLS+i*16+8) = i; // index
         }
     }
     memcpy((void*)((uintptr_t)ptr+context->tlssize+0x10), &context->vsyscall, sizeof(void*));  // address of vsyscall
diff --git a/src/emu/x87emu_private.h b/src/emu/x87emu_private.h
index f188187a..fc71b6d1 100755
--- a/src/emu/x87emu_private.h
+++ b/src/emu/x87emu_private.h
@@ -14,10 +14,6 @@ typedef struct x64emu_s x64emu_t;
 #define LN2		0.69314718055994531
 #define LG2		0.3010299956639812
 
-//void Run66D9(x64emu_t *emu);
-//void Run66DD(x64emu_t *emu);
-//void RunDF(x64emu_t *emu);
-
 #define ST0 emu->mmx87[emu->top]
 #define ST1 emu->mmx87[(emu->top+1)&7]
 #define ST(a) emu->mmx87[(emu->top+(a))&7]
@@ -58,8 +54,8 @@ static inline void fpu_do_free(x64emu_t* emu, int i)
 {
     emu->p_regs[(emu->top+i)&7].tag = 0b11;    // empty
     // check if all empty
-    for(int i=0; i<8; ++i)
-        if(emu->p_regs[i].tag != 0b11)
+    for(int j=0; j<8; ++j)
+        if(emu->p_regs[j].tag != 0b11)
             return;
     emu->fpu_stack = 0;
 }
diff --git a/src/include/box64context.h b/src/include/box64context.h
index 1b215378..d5e8b82d 100755
--- a/src/include/box64context.h
+++ b/src/include/box64context.h
@@ -82,8 +82,8 @@ typedef struct box64context_s {
     char*               fullpath;
     char*               box64path;      // path of current box64 executable
 
-    uint32_t            stacksz;
-    int                 stackalign;
+    uint64_t            stacksz;
+    size_t              stackalign;
     void*               stack;          // alocated stack
 
     elfheader_t         **elfs;         // elf headers and memory
@@ -152,7 +152,7 @@ typedef struct box64context_s {
 
     pthread_key_t       tlskey;     // then tls key to have actual tlsdata
     void*               tlsdata;    // the initial global tlsdata
-    int32_t             tlssize;    // wanted size of tlsdata
+    int64_t             tlssize;    // wanted size of tlsdata
     base_segment_t      segtls[3];  // only handling 0/1/2 descriptors
 
     uintptr_t           *auxval_start;
diff --git a/src/include/custommem.h b/src/include/custommem.h
index 1b86d251..bd687468 100644
--- a/src/include/custommem.h
+++ b/src/include/custommem.h
@@ -20,7 +20,7 @@ void customFree(void* p);
 typedef struct dynablock_s dynablock_t;
 typedef struct dynablocklist_s dynablocklist_t;
 // custom protection flag to mark Page that are Write protected for Dynarec purpose
-uintptr_t AllocDynarecMap(dynablock_t* db, int size);
+uintptr_t AllocDynarecMap(dynablock_t* db, size_t size);
 void FreeDynarecMap(dynablock_t* db, uintptr_t addr, uint32_t size);
 
 void addDBFromAddressRange(uintptr_t addr, uintptr_t size);
@@ -60,4 +60,4 @@ void relockCustommemMutex(int locks);
 void init_custommem_helper(box64context_t* ctx);
 void fini_custommem_helper(box64context_t* ctx);
 
-#endif //__CUSTOM_MEM__H_
\ No newline at end of file
+#endif //__CUSTOM_MEM__H_
diff --git a/src/include/elfloader.h b/src/include/elfloader.h
index a46d9b05..aef5ae35 100755
--- a/src/include/elfloader.h
+++ b/src/include/elfloader.h
@@ -26,7 +26,7 @@ int LoadElfMemory(FILE* f, box64context_t* context, elfheader_t* head);
 int ReloadElfMemory(FILE* f, box64context_t* context, elfheader_t* head);
 int RelocateElf(lib_t *maplib, lib_t* local_maplib, elfheader_t* head);
 int RelocateElfPlt(lib_t *maplib, lib_t* local_maplib, elfheader_t* head);
-void CalcStack(elfheader_t* h, uint32_t* stacksz, int* stackalign);
+void CalcStack(elfheader_t* h, uint64_t* stacksz, size_t* stackalign);
 uintptr_t GetEntryPoint(lib_t* maplib, elfheader_t* h);
 uintptr_t GetLastByte(elfheader_t* h);
 void AddSymbols(lib_t *maplib, kh_mapsymbols_t* mapsymbols, kh_mapsymbols_t* weaksymbols, kh_mapsymbols_t* localsymbols, elfheader_t* h);
@@ -41,7 +41,7 @@ void* GetElfDelta(elfheader_t* h);
 uint32_t GetBaseSize(elfheader_t* h);
 int IsAddressInElfSpace(elfheader_t* h, uintptr_t addr);
 elfheader_t* FindElfAddress(box64context_t *context, uintptr_t addr);
-const char* FindNearestSymbolName(elfheader_t* h, void* p, uintptr_t* start, uint32_t* sz);
+const char* FindNearestSymbolName(elfheader_t* h, void* p, uintptr_t* start, uint64_t* sz);
 int32_t GetTLSBase(elfheader_t* h);
 uint32_t GetTLSSize(elfheader_t* h);
 void* GetTLSPointer(box64context_t* context, elfheader_t* h);
@@ -55,5 +55,4 @@ void CreateMemorymapFile(box64context_t* context, int fd);
 
 int ElfCheckIfUseTCMallocMinimal(elfheader_t* h);   // return 1 if tcmalloc is used
 
-
 #endif //__ELF_LOADER_H_
diff --git a/src/include/librarian.h b/src/include/librarian.h
index 6e69349b..37eda132 100755
--- a/src/include/librarian.h
+++ b/src/include/librarian.h
@@ -37,13 +37,13 @@ int GetNoWeakSymbolStartEnd(lib_t *maplib, const char* name, uintptr_t* start, u
 elfheader_t* GetGlobalSymbolElf(lib_t *maplib, const char* name);
 int IsGlobalNoWeakSymbolInNative(lib_t *maplib, const char* name);
 
-void AddSymbol(kh_mapsymbols_t *mapsymbols, const char* name, uintptr_t addr, uint32_t sz); // replace if already there
+void AddSymbol(kh_mapsymbols_t *mapsymbols, const char* name, uintptr_t addr, uint64_t sz); // replace if already there
 uintptr_t FindSymbol(kh_mapsymbols_t *mapsymbols, const char* name);
-void AddWeakSymbol(kh_mapsymbols_t *mapsymbols, const char* name, uintptr_t addr, uint32_t sz); // don't add if already there
+void AddWeakSymbol(kh_mapsymbols_t *mapsymbols, const char* name, uintptr_t addr, uint64_t sz); // don't add if already there
 int GetSymbolStartEnd(kh_mapsymbols_t* mapsymbols, const char* name, uintptr_t* start, uintptr_t* end);
-const char* GetSymbolName(kh_mapsymbols_t* mapsymbols, void* p, uintptr_t* offs, uint32_t* sz);
+const char* GetSymbolName(kh_mapsymbols_t* mapsymbols, void* p, uintptr_t* offs, uint64_t* sz);
 
-const char* FindSymbolName(lib_t *maplib, void* p, void** start, uint32_t* sz, const char** libname, void** base);
+const char* FindSymbolName(lib_t *maplib, void* p, void** start, uint64_t* sz, const char** libname, void** base);
 
 void AddOffsetSymbol(lib_t *maplib, void* offs, const char* name);
 const char* GetNameOffset(lib_t *maplib, void* offs);
diff --git a/src/include/wrappedlibs.h b/src/include/wrappedlibs.h
index d8cf3a64..41e27765 100755
--- a/src/include/wrappedlibs.h
+++ b/src/include/wrappedlibs.h
@@ -15,7 +15,6 @@ typedef struct wrappedlib_s {
     wrappedlib_fini_t   fini;
     wrappedlib_get_t    get;
     wrappedlib_get_t    getnoweak;
-    wrappedlib_get_t    getlocal;
 } wrappedlib_t;
 
-#endif //__WRAPPEDLIBS_H__
\ No newline at end of file
+#endif //__WRAPPEDLIBS_H__
diff --git a/src/librarian/librarian.c b/src/librarian/librarian.c
index 9afdd395..9eb191fd 100755
--- a/src/librarian/librarian.c
+++ b/src/librarian/librarian.c
@@ -539,7 +539,7 @@ int GetNoWeakSymbolStartEnd(lib_t *maplib, const char* name, uintptr_t* start, u
 }
 
 
-void AddSymbol(kh_mapsymbols_t *mapsymbols, const char* name, uintptr_t addr, uint32_t sz)
+void AddSymbol(kh_mapsymbols_t *mapsymbols, const char* name, uintptr_t addr, uint64_t sz)
 {
     int ret;
     khint_t k = kh_put(mapsymbols, mapsymbols, name, &ret);
@@ -553,7 +553,7 @@ uintptr_t FindSymbol(kh_mapsymbols_t *mapsymbols, const char* name)
         return 0;
     return kh_val(mapsymbols, k).offs;
 }
-void AddWeakSymbol(kh_mapsymbols_t *mapsymbols, const char* name, uintptr_t addr, uint32_t sz)
+void AddWeakSymbol(kh_mapsymbols_t *mapsymbols, const char* name, uintptr_t addr, uint64_t sz)
 {
     int ret;
     khint_t k = kh_put(mapsymbols, mapsymbols, name, &ret);
@@ -573,7 +573,7 @@ int GetSymbolStartEnd(kh_mapsymbols_t* mapsymbols, const char* name, uintptr_t*
     return 1;
 }
 
-const char* GetSymbolName(kh_mapsymbols_t* mapsymbols, void* p, uintptr_t* start, uint32_t* sz)
+const char* GetSymbolName(kh_mapsymbols_t* mapsymbols, void* p, uintptr_t* start, uint64_t* sz)
 {
     uintptr_t addr = (uintptr_t)p;
     onesymbol_t *one;
@@ -587,12 +587,12 @@ const char* GetSymbolName(kh_mapsymbols_t* mapsymbols, void* p, uintptr_t* start
     return NULL;
 }
 
-const char* FindSymbolName(lib_t *maplib, void* p, void** start, uint32_t* sz, const char** libname, void** base)
+const char* FindSymbolName(lib_t *maplib, void* p, void** start, uint64_t* sz, const char** libname, void** base)
 {
     // first, search in self...
     const char* ret = NULL;
     uintptr_t offs = 0;
-    uint32_t size = 0;
+    uint64_t size = 0;
     elfheader_t* h = FindElfAddress(my_context, (uintptr_t)p);
     if(h) {
         ret = FindNearestSymbolName(h, p, &offs, &size);
@@ -609,6 +609,7 @@ const char* FindSymbolName(lib_t *maplib, void* p, void** start, uint32_t* sz, c
         return ret;
     }
     // TODO: find if cyclic references exists (should also fix MapLibAddMapLib)
+    (void)maplib;
     /* for (int i = 0; i < maplib->libsz; ++i) {
         // if (maplib == maplib->libraries[i]->maplib) continue;
         const char *nameInLib = FindSymbolName(maplib->libraries[i]->maplib, p, start, sz, libname, base);
diff --git a/src/librarian/librarian_private.h b/src/librarian/librarian_private.h
index 881f527f..d76157c7 100755
--- a/src/librarian/librarian_private.h
+++ b/src/librarian/librarian_private.h
@@ -9,7 +9,7 @@ typedef struct box64context_s box64context_t;
 
 typedef struct onesymbol_s {
     uintptr_t   offs;
-    uint32_t    sz;
+    uint64_t    sz;
     // need to track type of symbol?
     // need to track origin?
 } onesymbol_t;
diff --git a/src/librarian/library.c b/src/librarian/library.c
index e5ab8a2f..cb2bb575 100755
--- a/src/librarian/library.c
+++ b/src/librarian/library.c
@@ -129,6 +129,8 @@ int EmuLib_GetLocal(library_t* lib, const char* name, uintptr_t *offs, uintptr_t
 
 int NativeLib_GetLocal(library_t* lib, const char* name, uintptr_t *offs, uintptr_t *sz)
 {
+    // TODO
+    (void)lib; (void)name; (void)offs; (void)sz;
     return 0;
 }
 
@@ -150,9 +152,9 @@ static void initNativeLib(library_t *lib, box64context_t* context) {
             lib->getlocal = NativeLib_GetLocal;
             lib->type = 0;
             // Call librarian to load all dependant elf
-            for(int i=0; i<lib->priv.w.needed; ++i) {
-                if(AddNeededLib(context->maplib, &lib->needed, lib, 0, lib->priv.w.neededlibs[i], context, thread_get_emu())) {
-                    printf_log(LOG_NONE, "Error: loading needed libs in elf %s\n", lib->priv.w.neededlibs[i]);
+            for(int j=0; j<lib->priv.w.needed; ++j) {
+                if(AddNeededLib(context->maplib, &lib->needed, lib, 0, lib->priv.w.neededlibs[j], context, thread_get_emu())) {
+                    printf_log(LOG_NONE, "Error: loading needed libs in elf %s\n", lib->priv.w.neededlibs[j]);
                     return;
                 }
             }
@@ -280,6 +282,8 @@ library_t *NewLibrary(const char* path, box64context_t* context)
 }
 int AddSymbolsLibrary(lib_t *maplib, library_t* lib, x64emu_t* emu)
 {
+    (void)emu;
+
     lib->active = 1;
     if(lib->type==1) {
         elfheader_t *elf_header = lib->context->elfs[lib->priv.n.elf_index];
diff --git a/src/libtools/auxval.c b/src/libtools/auxval.c
index a038f2dd..82c6fd35 100755
--- a/src/libtools/auxval.c
+++ b/src/libtools/auxval.c
@@ -23,6 +23,8 @@
 static uintptr_t* auxval_start = NULL;
 
 int init_auxval(int argc, const char **argv, const char **env) {
+    (void)argc; (void)argv;
+
     // auxval vector is after envs...
     while(*env)
         env++;
@@ -56,4 +58,4 @@ unsigned long real_getauxval(unsigned long type)
 //        p+=2;
 //    }
 //    return 0;
-//}
\ No newline at end of file
+//}
diff --git a/src/libtools/signals.c b/src/libtools/signals.c
index 5c66522e..c7fa6fe4 100755
--- a/src/libtools/signals.c
+++ b/src/libtools/signals.c
@@ -449,6 +449,8 @@ void my_sigactionhandler_oldcode(int32_t sig, siginfo_t* info, void * ucntx, int
     if(db) {
         frame = (uintptr_t*)p->uc_mcontext.regs[10+_SP];
     }
+#else
+    (void)ucntx; (void)cur_db;
 #endif
     // stack tracking
 	x64_stack_t *new_ss = my_context->onstack[sig]?(x64_stack_t*)pthread_getspecific(sigstack_key):NULL;
diff --git a/src/libtools/threads.c b/src/libtools/threads.c
index 0cd08a1b..b2ab3b5d 100755
--- a/src/libtools/threads.c
+++ b/src/libtools/threads.c
@@ -245,6 +245,7 @@ pthread_attr_t* getAlignedAttr(pthread_attr_t* m) {
 	return m;
 }
 void freeAlignedAttr(void* attr) {
+	(void)attr;
 }
 #else
 typedef struct aligned_attr_s {
@@ -313,6 +314,7 @@ EXPORT int my_pthread_attr_setstack(x64emu_t* emu, void* attr, void* stackaddr,
 
 EXPORT int my_pthread_attr_setstacksize(x64emu_t* emu, void* attr, size_t stacksize)
 {
+	(void)emu;
 	//aarch64 have an PTHREAD_STACK_MIN of 131072 instead of 16384 on x86_64!
 	if(stacksize<PTHREAD_STACK_MIN)
 		stacksize = PTHREAD_STACK_MIN;
@@ -322,70 +324,86 @@ EXPORT int my_pthread_attr_setstacksize(x64emu_t* emu, void* attr, size_t stacks
 #ifndef NOALIGN
 EXPORT int my_pthread_attr_getdetachstate(x64emu_t* emu, pthread_attr_t* attr, int *state)
 {
+	(void)emu;
 	return pthread_attr_getdetachstate(getAlignedAttr(attr), state);
 }
 EXPORT int my_pthread_attr_getguardsize(x64emu_t* emu, pthread_attr_t* attr, size_t* size)
 {
+	(void)emu;
 	return pthread_attr_getguardsize(getAlignedAttr(attr), size);
 }
 EXPORT int my_pthread_attr_getinheritsched(x64emu_t* emu, pthread_attr_t* attr, int* sched)
 {
+	(void)emu;
 	return pthread_attr_getinheritsched(getAlignedAttr(attr), sched);
 }
 EXPORT int my_pthread_attr_getschedparam(x64emu_t* emu, pthread_attr_t* attr, void* param)
 {
+	(void)emu;
 	return pthread_attr_getschedparam(getAlignedAttr(attr), param);
 }
 EXPORT int my_pthread_attr_getschedpolicy(x64emu_t* emu, pthread_attr_t* attr, int* policy)
 {
+	(void)emu;
 	return pthread_attr_getschedpolicy(getAlignedAttr(attr), policy);
 }
 EXPORT int my_pthread_attr_getscope(x64emu_t* emu, pthread_attr_t* attr, int* scope)
 {
+	(void)emu;
 	return pthread_attr_getscope(getAlignedAttr(attr), scope);
 }
 EXPORT int my_pthread_attr_getstackaddr(x64emu_t* emu, pthread_attr_t* attr, void* addr)
 {
+	(void)emu;
 	size_t size;
 	return pthread_attr_getstack(getAlignedAttr(attr), addr, &size);
 	//return pthread_attr_getstackaddr(getAlignedAttr(attr), addr);
 }
 EXPORT int my_pthread_attr_getstacksize(x64emu_t* emu, pthread_attr_t* attr, size_t* size)
 {
+	(void)emu;
 	void* addr;
 	return pthread_attr_getstack(getAlignedAttr(attr), &addr, size);
 	//return pthread_attr_getstacksize(getAlignedAttr(attr), size);
 }
 EXPORT int my_pthread_attr_init(x64emu_t* emu, pthread_attr_t* attr)
 {
+	(void)emu;
 	return pthread_attr_init(getAlignedAttrWithInit(attr, 0));
 }
 EXPORT int my_pthread_attr_setaffinity_np(x64emu_t* emu, pthread_attr_t* attr, size_t cpusize, void* cpuset)
 {
+	(void)emu;
 	return pthread_attr_setaffinity_np(getAlignedAttr(attr), cpusize, cpuset);
 }
 EXPORT int my_pthread_attr_setdetachstate(x64emu_t* emu, pthread_attr_t* attr, int state)
 {
+	(void)emu;
 	return pthread_attr_setdetachstate(getAlignedAttr(attr), state);
 }
 EXPORT int my_pthread_attr_setguardsize(x64emu_t* emu, pthread_attr_t* attr, size_t size)
 {
+	(void)emu;
 	return pthread_attr_setguardsize(getAlignedAttr(attr), size);
 }
 EXPORT int my_pthread_attr_setinheritsched(x64emu_t* emu, pthread_attr_t* attr, int sched)
 {
+	(void)emu;
 	return pthread_attr_setinheritsched(getAlignedAttr(attr), sched);
 }
 EXPORT int my_pthread_attr_setschedparam(x64emu_t* emu, pthread_attr_t* attr, void* param)
 {
+	(void)emu;
 	return pthread_attr_setschedparam(getAlignedAttr(attr), param);
 }
 EXPORT int my_pthread_attr_setschedpolicy(x64emu_t* emu, pthread_attr_t* attr, int policy)
 {
+	(void)emu;
 	return pthread_attr_setschedpolicy(getAlignedAttr(attr), policy);
 }
 EXPORT int my_pthread_attr_setscope(x64emu_t* emu, pthread_attr_t* attr, int scope)
 {
+	(void)emu;
 	return pthread_attr_setscope(getAlignedAttr(attr), scope);
 }
 EXPORT int my_pthread_attr_setstackaddr(x64emu_t* emu, pthread_attr_t* attr, void* addr)
@@ -495,6 +513,7 @@ EXPORT void my___pthread_register_cancel(void* E, void* B)
 
 EXPORT void my___pthread_unregister_cancel(x64emu_t* emu, x64_unwind_buff_t* buff)
 {
+	(void)emu;
 	__pthread_unwind_buf_t * pbuff = GetCancelThread(buff);
 	__pthread_unregister_cancel(pbuff);
 
@@ -504,6 +523,7 @@ EXPORT void my___pthread_unregister_cancel(x64emu_t* emu, x64_unwind_buff_t* buf
 
 EXPORT void my___pthread_unwind_next(x64emu_t* emu, x64_unwind_buff_t* buff)
 {
+	(void)emu;
 	__pthread_unwind_buf_t pbuff = *GetCancelThread(buff);
 	DelCancelThread(buff);
 	// function is noreturn, putting stuff on the stack to have it auto-free (is that correct?)
@@ -610,6 +630,7 @@ static void my_once_callback()
 
 int EXPORT my_pthread_once(x64emu_t* emu, void* once, void* cb)
 {
+	(void)emu;
 	my_once_callback_fct = (uintptr_t)cb;
 	return pthread_once(once, my_once_callback);
 }
@@ -617,6 +638,7 @@ EXPORT int my___pthread_once(x64emu_t* emu, void* once, void* cb) __attribute__(
 
 EXPORT int my_pthread_key_create(x64emu_t* emu, void* key, void* dtor)
 {
+	(void)emu;
 	return pthread_key_create(key, findkey_destructorFct(dtor));
 }
 EXPORT int my___pthread_key_create(x64emu_t* emu, void* key, void* dtor) __attribute__((alias("my_pthread_key_create")));
@@ -626,43 +648,42 @@ pthread_mutex_t* getAlignedMutex(pthread_mutex_t* m);
 
 EXPORT int my_pthread_cond_timedwait(x64emu_t* emu, pthread_cond_t* cond, void* mutex, void* abstime)
 {
+	(void)emu;
 	return pthread_cond_timedwait(cond, getAlignedMutex((pthread_mutex_t*)mutex), (const struct timespec*)abstime);
 }
 EXPORT int my_pthread_cond_wait(x64emu_t* emu, pthread_cond_t* cond, void* mutex)
 {
+	(void)emu;
 	return pthread_cond_wait(cond, getAlignedMutex((pthread_mutex_t*)mutex));
 }
 
-//EXPORT int my_pthread_attr_setscope(x64emu_t* emu, void* at*tr, int scope)
-//{
-//    if(scope!=PTHREAD_SCOPE_SYSTEM) printf_log(LOG_INFO, "Warning, scope of call to pthread_attr_setscope(...) changed from %d to PTHREAD_SCOPE_SYSTEM\n", scope);
-//	return pthread_attr_setscope(attr, PTHREAD_SCOPE_SYSTEM);
-//    //The scope is either PTHREAD_SCOPE_SYSTEM or PTHREAD_SCOPE_PROCESS
-//    // but PTHREAD_SCOPE_PROCESS doesn't seem supported on ARM linux, and PTHREAD_SCOPE_SYSTEM is default
-//}
-
 EXPORT void my__pthread_cleanup_push_defer(x64emu_t* emu, void* buffer, void* routine, void* arg)
 {
+    (void)emu;
 	_pthread_cleanup_push_defer(buffer, findcleanup_routineFct(routine), arg);
 }
 
 EXPORT void my__pthread_cleanup_push(x64emu_t* emu, void* buffer, void* routine, void* arg)
 {
+    (void)emu;
 	_pthread_cleanup_push(buffer, findcleanup_routineFct(routine), arg);
 }
 
 EXPORT void my__pthread_cleanup_pop_restore(x64emu_t* emu, void* buffer, int exec)
 {
+    (void)emu;
 	_pthread_cleanup_pop_restore(buffer, exec);
 }
 
 EXPORT void my__pthread_cleanup_pop(x64emu_t* emu, void* buffer, int exec)
 {
+    (void)emu;
 	_pthread_cleanup_pop(buffer, exec);
 }
 
 //EXPORT int my_pthread_getaffinity_np(x64emu_t* emu, pthread_t thread, int cpusetsize, void* cpuset)
 //{
+//	(void)emu;
 //	int ret = pthread_getaffinity_np(thread, cpusetsize, cpuset);
 //	if(ret<0) {
 //		printf_log(LOG_INFO, "Warning, pthread_getaffinity_np(%p, %d, %p) errored, with errno=%d\n", (void*)thread, cpusetsize, cpuset, errno);
@@ -673,6 +694,7 @@ EXPORT void my__pthread_cleanup_pop(x64emu_t* emu, void* buffer, int exec)
 
 //EXPORT int my_pthread_setaffinity_np(x64emu_t* emu, pthread_t thread, int cpusetsize, void* cpuset)
 //{
+//	(void)emu;
 //	int ret = pthread_setaffinity_np(thread, cpusetsize, cpuset);
 //	if(ret<0) {
 //		printf_log(LOG_INFO, "Warning, pthread_setaffinity_np(%p, %d, %p) errored, with errno=%d\n", (void*)thread, cpusetsize, cpuset, errno);
@@ -683,7 +705,7 @@ EXPORT void my__pthread_cleanup_pop(x64emu_t* emu, void* buffer, int exec)
 
 //EXPORT int my_pthread_attr_setaffinity_np(x64emu_t* emu, void* attr, uint32_t cpusetsize, void* cpuset)
 //{
-//
+//	(void)emu;
 //	int ret = pthread_attr_setaffinity_np(attr, cpusetsize, cpuset);
 //	if(ret<0) {
 //		printf_log(LOG_INFO, "Warning, pthread_attr_setaffinity_np(%p, %d, %p) errored, with errno=%d\n", attr, cpusetsize, cpuset, errno);
@@ -694,14 +716,16 @@ EXPORT void my__pthread_cleanup_pop(x64emu_t* emu, void* buffer, int exec)
 
 EXPORT int my_pthread_kill(x64emu_t* emu, void* thread, int sig)
 {
-    // check for old "is everything ok?"
-    if(thread==NULL && sig==0)
-        return pthread_kill(pthread_self(), 0);
-    return pthread_kill((pthread_t)thread, sig);
+	(void)emu;
+	// check for old "is everything ok?"
+	if(thread==NULL && sig==0)
+		return pthread_kill(pthread_self(), 0);
+	return pthread_kill((pthread_t)thread, sig);
 }
 
 //EXPORT void my_pthread_exit(x64emu_t* emu, void* retval)
 //{
+//	(void)emu;
 //	pthread_exit(retval);
 //}
 
diff --git a/src/main.c b/src/main.c
index e6401c24..034ce6b3 100755
--- a/src/main.c
+++ b/src/main.c
@@ -519,26 +519,26 @@ void LoadEnvVars(box64context_t *context)
 }
 
 EXPORTDYN
-void setupTraceInit(box64context_t* context)
+void setupTraceInit()
 {
 #ifdef HAVE_TRACE
     char* p = getenv("BOX64_TRACE_INIT");
     if(p) {
         setbuf(stdout, NULL);
-        uintptr_t trace_start=0, trace_end=0;
+        uintptr_t s_trace_start=0, s_trace_end=0;
         if (strcmp(p, "1")==0)
             SetTraceEmu(0, 0);
         else if (strchr(p,'-')) {
-            if(sscanf(p, "%ld-%ld", &trace_start, &trace_end)!=2) {
-                if(sscanf(p, "0x%lX-0x%lX", &trace_start, &trace_end)!=2)
-                    sscanf(p, "%lx-%lx", &trace_start, &trace_end);
+            if(sscanf(p, "%ld-%ld", &s_trace_start, &s_trace_end)!=2) {
+                if(sscanf(p, "0x%lX-0x%lX", &s_trace_start, &s_trace_end)!=2)
+                    sscanf(p, "%lx-%lx", &s_trace_start, &s_trace_end);
             }
-            if(trace_start || trace_end)
-                SetTraceEmu(trace_start, trace_end);
+            if(s_trace_start || s_trace_end)
+                SetTraceEmu(s_trace_start, s_trace_end);
         } else {
-            if (GetSymbolStartEnd(GetMapSymbol(my_context->maplib), p, &trace_start, &trace_end)) {
-                SetTraceEmu(trace_start, trace_end);
-                printf_log(LOG_INFO, "TRACE on %s only (%p-%p)\n", p, (void*)trace_start, (void*)trace_end);
+            if (GetSymbolStartEnd(GetMapSymbol(my_context->maplib), p, &s_trace_start, &s_trace_end)) {
+                SetTraceEmu(s_trace_start, s_trace_end);
+                printf_log(LOG_INFO, "TRACE on %s only (%p-%p)\n", p, (void*)s_trace_start, (void*)s_trace_end);
             } else {
                 printf_log(LOG_NONE, "Warning, symbol to Traced (\"%s\") not found, disabling trace\n", p);
                 SetTraceEmu(0, 100);  // disabling trace, mostly
@@ -554,35 +554,35 @@ void setupTraceInit(box64context_t* context)
 }
 
 EXPORTDYN
-void setupTrace(box64context_t* context)
+void setupTrace()
 {
 #ifdef HAVE_TRACE
     char* p = getenv("BOX64_TRACE");
     if(p) {
         setbuf(stdout, NULL);
-        uintptr_t trace_start=0, trace_end=0;
+        uintptr_t s_trace_start=0, s_trace_end=0;
         if (strcmp(p, "1")==0)
             SetTraceEmu(0, 0);
         else if (strchr(p,'-')) {
-            if(sscanf(p, "%ld-%ld", &trace_start, &trace_end)!=2) {
-                if(sscanf(p, "0x%lX-0x%lX", &trace_start, &trace_end)!=2)
-                    sscanf(p, "%lx-%lx", &trace_start, &trace_end);
+            if(sscanf(p, "%ld-%ld", &s_trace_start, &s_trace_end)!=2) {
+                if(sscanf(p, "0x%lX-0x%lX", &s_trace_start, &s_trace_end)!=2)
+                    sscanf(p, "%lx-%lx", &s_trace_start, &s_trace_end);
             }
-            if(trace_start || trace_end) {
-                SetTraceEmu(trace_start, trace_end);
-                if(!trace_start && trace_end==1) {
+            if(s_trace_start || s_trace_end) {
+                SetTraceEmu(s_trace_start, s_trace_end);
+                if(!s_trace_start && s_trace_end==1) {
                     printf_log(LOG_INFO, "TRACE enabled but inactive\n");
                 } else {
-                    printf_log(LOG_INFO, "TRACE on %s only (%p-%p)\n", p, (void*)trace_start, (void*)trace_end);
+                    printf_log(LOG_INFO, "TRACE on %s only (%p-%p)\n", p, (void*)s_trace_start, (void*)s_trace_end);
                 }
             }
         } else {
-            if (GetGlobalSymbolStartEnd(my_context->maplib, p, &trace_start, &trace_end)) {
-                SetTraceEmu(trace_start, trace_end);
-                printf_log(LOG_INFO, "TRACE on %s only (%p-%p)\n", p, (void*)trace_start, (void*)trace_end);
-            } else if(GetLocalSymbolStartEnd(my_context->maplib, p, &trace_start, &trace_end, NULL)) {
-                SetTraceEmu(trace_start, trace_end);
-                printf_log(LOG_INFO, "TRACE on %s only (%p-%p)\n", p, (void*)trace_start, (void*)trace_end);
+            if (GetGlobalSymbolStartEnd(my_context->maplib, p, &s_trace_start, &s_trace_end)) {
+                SetTraceEmu(s_trace_start, s_trace_end);
+                printf_log(LOG_INFO, "TRACE on %s only (%p-%p)\n", p, (void*)s_trace_start, (void*)s_trace_end);
+            } else if(GetLocalSymbolStartEnd(my_context->maplib, p, &s_trace_start, &s_trace_end, NULL)) {
+                SetTraceEmu(s_trace_start, s_trace_end);
+                printf_log(LOG_INFO, "TRACE on %s only (%p-%p)\n", p, (void*)s_trace_start, (void*)s_trace_end);
             } else {
                 printf_log(LOG_NONE, "Warning, symbol to Traced (\"%s\") not found, trying to set trace later\n", p);
                 SetTraceEmu(0, 1);  // disabling trace, mostly
@@ -966,7 +966,7 @@ int main(int argc, const char **argv, const char **env) {
 
     thread_set_emu(emu);
 
-    setupTraceInit(my_context);
+    setupTraceInit();
     // export symbols
     AddSymbols(my_context->maplib, GetMapSymbol(my_context->maplib), GetWeakSymbol(my_context->maplib), GetLocalSymbol(my_context->maplib), elf_header);
     if(wine_preloaded) {
@@ -1012,7 +1012,7 @@ int main(int argc, const char **argv, const char **env) {
     // do some special case check, _IO_2_1_stderr_ and friends, that are setup by libc, but it's already done here, so need to do a copy
     ResetSpecialCaseMainElf(elf_header);
     // init...
-    setupTrace(my_context);
+    setupTrace();
     // get entrypoint
     my_context->ep = GetEntryPoint(my_context->maplib, elf_header);
 #if defined(RPI) || defined(RK3399) || defined(RK3326)
diff --git a/src/tools/box64stack.c b/src/tools/box64stack.c
index 7c330128..cfc778ae 100755
--- a/src/tools/box64stack.c
+++ b/src/tools/box64stack.c
@@ -20,14 +20,14 @@ int CalcStackSize(box64context_t *context)
     for (int i=0; i<context->elfsize; ++i)
         CalcStack(context->elfs[i], &context->stacksz, &context->stackalign);
 
-//    if (posix_memalign((void**)&context->stack, context->stackalign, context->stacksz)) {
+    //if (posix_memalign((void**)&context->stack, context->stackalign, context->stacksz)) {
     context->stack = mmap(NULL, context->stacksz, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_GROWSDOWN, -1, 0);
     if (context->stack==(void*)-1) {
-        printf_log(LOG_NONE, "Cannot allocate aligned memory (0x%x/0x%x) for stack\n", context->stacksz, context->stackalign);
+        printf_log(LOG_NONE, "Cannot allocate aligned memory (0x%lx/0x%zx) for stack\n", context->stacksz, context->stackalign);
         return 1;
     }
     //memset(context->stack, 0, context->stacksz);
-    printf_log(LOG_DEBUG, "Stack is @%p size=0x%x align=0x%x\n", context->stack, context->stacksz, context->stackalign);
+    printf_log(LOG_DEBUG, "Stack is @%p size=0x%lx align=0x%zx\n", context->stack, context->stacksz, context->stackalign);
 
     return 0;
 }
diff --git a/src/tools/bridge.c b/src/tools/bridge.c
index 3a3e6768..fb349ccf 100755
--- a/src/tools/bridge.c
+++ b/src/tools/bridge.c
@@ -149,6 +149,8 @@ uintptr_t AddCheckBridge(bridge_t* bridge, wrapper_t w, void* fnc, int N, const
 
 uintptr_t AddAutomaticBridge(x64emu_t* emu, bridge_t* bridge, wrapper_t w, void* fnc, int N)
 {
+    (void)emu;
+
     if(!fnc)
         return 0;
     uintptr_t ret = CheckBridged(bridge, fnc);
diff --git a/src/tools/callback.c b/src/tools/callback.c
index 8c46139e..1f7250a6 100755
--- a/src/tools/callback.c
+++ b/src/tools/callback.c
@@ -16,6 +16,8 @@
 EXPORTDYN
 uint64_t RunFunction(box64context_t *context, uintptr_t fnc, int nargs, ...)
 {
+    (void)context;
+
     x64emu_t *emu = thread_get_emu();
 
     if(nargs>6)
diff --git a/src/tools/fileutils.c b/src/tools/fileutils.c
index 870bbd1b..18b8dc4d 100755
--- a/src/tools/fileutils.c
+++ b/src/tools/fileutils.c
@@ -46,7 +46,7 @@ char* ResolveFile(const char* filename, path_collection_t* paths)
     for (int i=0; i<paths->size; ++i) {
         if(paths->paths[i][0]!='/') {
             // not an absolute path...
-            getcwd(p, sizeof(p));
+            if(!getcwd(p, sizeof(p))) return NULL;
             if(p[strlen(p)-1]!='/')
                 strcat(p, "/");
             strcat(p, paths->paths[i]);
diff --git a/src/wrapped/generated/wrappedbz2types.h b/src/wrapped/generated/wrappedbz2types.h
index 7ea64a63..ec0f499a 100644
--- a/src/wrapped/generated/wrappedbz2types.h
+++ b/src/wrapped/generated/wrappedbz2types.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedbz2TYPES_H_
 #define __wrappedbz2TYPES_H_
diff --git a/src/wrapped/generated/wrappedcryptotypes.h b/src/wrapped/generated/wrappedcryptotypes.h
index 30d8180f..3e37a464 100644
--- a/src/wrapped/generated/wrappedcryptotypes.h
+++ b/src/wrapped/generated/wrappedcryptotypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedcryptoTYPES_H_
 #define __wrappedcryptoTYPES_H_
diff --git a/src/wrapped/generated/wrappedcurltypes.h b/src/wrapped/generated/wrappedcurltypes.h
index 5f0cccfd..95fae23c 100644
--- a/src/wrapped/generated/wrappedcurltypes.h
+++ b/src/wrapped/generated/wrappedcurltypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedcurlTYPES_H_
 #define __wrappedcurlTYPES_H_
diff --git a/src/wrapped/generated/wrappeddbustypes.h b/src/wrapped/generated/wrappeddbustypes.h
index ea6dd689..f7468c89 100644
--- a/src/wrapped/generated/wrappeddbustypes.h
+++ b/src/wrapped/generated/wrappeddbustypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappeddbusTYPES_H_
 #define __wrappeddbusTYPES_H_
diff --git a/src/wrapped/generated/wrappedfontconfigtypes.h b/src/wrapped/generated/wrappedfontconfigtypes.h
index 46e77c3f..580e5974 100644
--- a/src/wrapped/generated/wrappedfontconfigtypes.h
+++ b/src/wrapped/generated/wrappedfontconfigtypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedfontconfigTYPES_H_
 #define __wrappedfontconfigTYPES_H_
diff --git a/src/wrapped/generated/wrappedfreetypetypes.h b/src/wrapped/generated/wrappedfreetypetypes.h
index 9378eb8f..034f108b 100644
--- a/src/wrapped/generated/wrappedfreetypetypes.h
+++ b/src/wrapped/generated/wrappedfreetypetypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedfreetypeTYPES_H_
 #define __wrappedfreetypeTYPES_H_
diff --git a/src/wrapped/generated/wrappedgnutlstypes.h b/src/wrapped/generated/wrappedgnutlstypes.h
index d465739c..62fe8d58 100644
--- a/src/wrapped/generated/wrappedgnutlstypes.h
+++ b/src/wrapped/generated/wrappedgnutlstypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedgnutlsTYPES_H_
 #define __wrappedgnutlsTYPES_H_
diff --git a/src/wrapped/generated/wrappedldlinuxtypes.h b/src/wrapped/generated/wrappedldlinuxtypes.h
index 4a7a4158..45bb4eba 100644
--- a/src/wrapped/generated/wrappedldlinuxtypes.h
+++ b/src/wrapped/generated/wrappedldlinuxtypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedldlinuxTYPES_H_
 #define __wrappedldlinuxTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibasoundtypes.h b/src/wrapped/generated/wrappedlibasoundtypes.h
index ab06d481..a82a4d58 100644
--- a/src/wrapped/generated/wrappedlibasoundtypes.h
+++ b/src/wrapped/generated/wrappedlibasoundtypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedlibasoundTYPES_H_
 #define __wrappedlibasoundTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibctypes.h b/src/wrapped/generated/wrappedlibctypes.h
index d252e38a..894b8e08 100644
--- a/src/wrapped/generated/wrappedlibctypes.h
+++ b/src/wrapped/generated/wrappedlibctypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedlibcTYPES_H_
 #define __wrappedlibcTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibdltypes.h b/src/wrapped/generated/wrappedlibdltypes.h
index 9a903f6d..a30c1185 100644
--- a/src/wrapped/generated/wrappedlibdltypes.h
+++ b/src/wrapped/generated/wrappedlibdltypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedlibdlTYPES_H_
 #define __wrappedlibdlTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibgltypes.h b/src/wrapped/generated/wrappedlibgltypes.h
index 463bced6..5295a21b 100644
--- a/src/wrapped/generated/wrappedlibgltypes.h
+++ b/src/wrapped/generated/wrappedlibgltypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedlibglTYPES_H_
 #define __wrappedlibglTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibglutypes.h b/src/wrapped/generated/wrappedlibglutypes.h
index c3f295fa..eecbceff 100644
--- a/src/wrapped/generated/wrappedlibglutypes.h
+++ b/src/wrapped/generated/wrappedlibglutypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedlibgluTYPES_H_
 #define __wrappedlibgluTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibpthreadtypes.h b/src/wrapped/generated/wrappedlibpthreadtypes.h
index 87d38988..107e43eb 100644
--- a/src/wrapped/generated/wrappedlibpthreadtypes.h
+++ b/src/wrapped/generated/wrappedlibpthreadtypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedlibpthreadTYPES_H_
 #define __wrappedlibpthreadTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibrttypes.h b/src/wrapped/generated/wrappedlibrttypes.h
index f3c61b10..2b3bd15e 100644
--- a/src/wrapped/generated/wrappedlibrttypes.h
+++ b/src/wrapped/generated/wrappedlibrttypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedlibrtTYPES_H_
 #define __wrappedlibrtTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibsmtypes.h b/src/wrapped/generated/wrappedlibsmtypes.h
index 27f9c636..26e2a700 100644
--- a/src/wrapped/generated/wrappedlibsmtypes.h
+++ b/src/wrapped/generated/wrappedlibsmtypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedlibsmTYPES_H_
 #define __wrappedlibsmTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibssltypes.h b/src/wrapped/generated/wrappedlibssltypes.h
index a56ea812..b8c176e1 100644
--- a/src/wrapped/generated/wrappedlibssltypes.h
+++ b/src/wrapped/generated/wrappedlibssltypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedlibsslTYPES_H_
 #define __wrappedlibsslTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibx11types.h b/src/wrapped/generated/wrappedlibx11types.h
index 0810f2a3..e9a2e3e5 100644
--- a/src/wrapped/generated/wrappedlibx11types.h
+++ b/src/wrapped/generated/wrappedlibx11types.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedlibx11TYPES_H_
 #define __wrappedlibx11TYPES_H_
diff --git a/src/wrapped/generated/wrappedlibxexttypes.h b/src/wrapped/generated/wrappedlibxexttypes.h
index cb48dac5..e813ec93 100644
--- a/src/wrapped/generated/wrappedlibxexttypes.h
+++ b/src/wrapped/generated/wrappedlibxexttypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedlibxextTYPES_H_
 #define __wrappedlibxextTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibxtsttypes.h b/src/wrapped/generated/wrappedlibxtsttypes.h
index f13097ea..c4e2ed70 100644
--- a/src/wrapped/generated/wrappedlibxtsttypes.h
+++ b/src/wrapped/generated/wrappedlibxtsttypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedlibxtstTYPES_H_
 #define __wrappedlibxtstTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibxttypes.h b/src/wrapped/generated/wrappedlibxttypes.h
index 8d49e866..dbc64d50 100644
--- a/src/wrapped/generated/wrappedlibxttypes.h
+++ b/src/wrapped/generated/wrappedlibxttypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedlibxtTYPES_H_
 #define __wrappedlibxtTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibztypes.h b/src/wrapped/generated/wrappedlibztypes.h
index b2201a7d..a4aaf3c8 100644
--- a/src/wrapped/generated/wrappedlibztypes.h
+++ b/src/wrapped/generated/wrappedlibztypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedlibzTYPES_H_
 #define __wrappedlibzTYPES_H_
diff --git a/src/wrapped/generated/wrappedopenaltypes.h b/src/wrapped/generated/wrappedopenaltypes.h
index 6889c3ba..d63b7311 100644
--- a/src/wrapped/generated/wrappedopenaltypes.h
+++ b/src/wrapped/generated/wrappedopenaltypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedopenalTYPES_H_
 #define __wrappedopenalTYPES_H_
diff --git a/src/wrapped/generated/wrappedpangotypes.h b/src/wrapped/generated/wrappedpangotypes.h
index 7e535062..ee78f918 100644
--- a/src/wrapped/generated/wrappedpangotypes.h
+++ b/src/wrapped/generated/wrappedpangotypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedpangoTYPES_H_
 #define __wrappedpangoTYPES_H_
diff --git a/src/wrapped/generated/wrappedpulsetypes.h b/src/wrapped/generated/wrappedpulsetypes.h
index 2fc994fd..43292d65 100644
--- a/src/wrapped/generated/wrappedpulsetypes.h
+++ b/src/wrapped/generated/wrappedpulsetypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedpulseTYPES_H_
 #define __wrappedpulseTYPES_H_
diff --git a/src/wrapped/generated/wrappedsdl1imagetypes.h b/src/wrapped/generated/wrappedsdl1imagetypes.h
index 89c5e486..1b7e989b 100644
--- a/src/wrapped/generated/wrappedsdl1imagetypes.h
+++ b/src/wrapped/generated/wrappedsdl1imagetypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedsdl1imageTYPES_H_
 #define __wrappedsdl1imageTYPES_H_
diff --git a/src/wrapped/generated/wrappedsdl1mixertypes.h b/src/wrapped/generated/wrappedsdl1mixertypes.h
index 26106a46..5d4c5819 100644
--- a/src/wrapped/generated/wrappedsdl1mixertypes.h
+++ b/src/wrapped/generated/wrappedsdl1mixertypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedsdl1mixerTYPES_H_
 #define __wrappedsdl1mixerTYPES_H_
diff --git a/src/wrapped/generated/wrappedsdl1ttftypes.h b/src/wrapped/generated/wrappedsdl1ttftypes.h
index b61ad3e7..058a8b12 100644
--- a/src/wrapped/generated/wrappedsdl1ttftypes.h
+++ b/src/wrapped/generated/wrappedsdl1ttftypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedsdl1ttfTYPES_H_
 #define __wrappedsdl1ttfTYPES_H_
diff --git a/src/wrapped/generated/wrappedsdl1types.h b/src/wrapped/generated/wrappedsdl1types.h
index b510c583..f4b819d2 100644
--- a/src/wrapped/generated/wrappedsdl1types.h
+++ b/src/wrapped/generated/wrappedsdl1types.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedsdl1TYPES_H_
 #define __wrappedsdl1TYPES_H_
diff --git a/src/wrapped/generated/wrappedsdl2imagetypes.h b/src/wrapped/generated/wrappedsdl2imagetypes.h
index 57120cbe..dde655f7 100644
--- a/src/wrapped/generated/wrappedsdl2imagetypes.h
+++ b/src/wrapped/generated/wrappedsdl2imagetypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedsdl2imageTYPES_H_
 #define __wrappedsdl2imageTYPES_H_
diff --git a/src/wrapped/generated/wrappedsdl2mixertypes.h b/src/wrapped/generated/wrappedsdl2mixertypes.h
index 7bc662db..45585588 100644
--- a/src/wrapped/generated/wrappedsdl2mixertypes.h
+++ b/src/wrapped/generated/wrappedsdl2mixertypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedsdl2mixerTYPES_H_
 #define __wrappedsdl2mixerTYPES_H_
diff --git a/src/wrapped/generated/wrappedsdl2ttftypes.h b/src/wrapped/generated/wrappedsdl2ttftypes.h
index fe3c4815..81c411cd 100644
--- a/src/wrapped/generated/wrappedsdl2ttftypes.h
+++ b/src/wrapped/generated/wrappedsdl2ttftypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedsdl2ttfTYPES_H_
 #define __wrappedsdl2ttfTYPES_H_
diff --git a/src/wrapped/generated/wrappedsdl2types.h b/src/wrapped/generated/wrappedsdl2types.h
index 3c8bb639..d59b86a1 100644
--- a/src/wrapped/generated/wrappedsdl2types.h
+++ b/src/wrapped/generated/wrappedsdl2types.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedsdl2TYPES_H_
 #define __wrappedsdl2TYPES_H_
diff --git a/src/wrapped/generated/wrappedsmpeg2types.h b/src/wrapped/generated/wrappedsmpeg2types.h
index 8fe02baf..0b1b13ed 100644
--- a/src/wrapped/generated/wrappedsmpeg2types.h
+++ b/src/wrapped/generated/wrappedsmpeg2types.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedsmpeg2TYPES_H_
 #define __wrappedsmpeg2TYPES_H_
diff --git a/src/wrapped/generated/wrappedsmpegtypes.h b/src/wrapped/generated/wrappedsmpegtypes.h
index 658adb1e..fa6f397b 100644
--- a/src/wrapped/generated/wrappedsmpegtypes.h
+++ b/src/wrapped/generated/wrappedsmpegtypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedsmpegTYPES_H_
 #define __wrappedsmpegTYPES_H_
diff --git a/src/wrapped/generated/wrappedutiltypes.h b/src/wrapped/generated/wrappedutiltypes.h
index 33e5ddec..050f59ec 100644
--- a/src/wrapped/generated/wrappedutiltypes.h
+++ b/src/wrapped/generated/wrappedutiltypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedutilTYPES_H_
 #define __wrappedutilTYPES_H_
diff --git a/src/wrapped/generated/wrappedvorbisfiletypes.h b/src/wrapped/generated/wrappedvorbisfiletypes.h
index c135492f..f430cab5 100644
--- a/src/wrapped/generated/wrappedvorbisfiletypes.h
+++ b/src/wrapped/generated/wrappedvorbisfiletypes.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __wrappedvorbisfileTYPES_H_
 #define __wrappedvorbisfileTYPES_H_
diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c
index b6a0083a..0b90c863 100644
--- a/src/wrapped/generated/wrapper.c
+++ b/src/wrapped/generated/wrapper.c
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #include <stdio.h>
 #include <stdlib.h>
@@ -1236,7 +1236,7 @@ typedef double (*KFKp_t)(double, void*);
 #endif
 
 void vFE(x64emu_t *emu, uintptr_t fcn) { vFE_t fn = (vFE_t)fcn; fn(emu); }
-void vFv(x64emu_t *emu, uintptr_t fcn) { vFv_t fn = (vFv_t)fcn; fn(); }
+void vFv(x64emu_t *emu, uintptr_t fcn) { vFv_t fn = (vFv_t)fcn; fn(); (void)emu; }
 void vFi(x64emu_t *emu, uintptr_t fcn) { vFi_t fn = (vFi_t)fcn; fn((int64_t)R_RDI); }
 void vFu(x64emu_t *emu, uintptr_t fcn) { vFu_t fn = (vFu_t)fcn; fn((uint64_t)R_RDI); }
 void vFf(x64emu_t *emu, uintptr_t fcn) { vFf_t fn = (vFf_t)fcn; fn(emu->xmm[0].f[0]); }
diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h
index d17274b4..b15e3e17 100644
--- a/src/wrapped/generated/wrapper.h
+++ b/src/wrapped/generated/wrapper.h
@@ -1,5 +1,5 @@
 /*******************************************************************
- * File automatically generated by rebuild_wrappers.py (v1.3.0.10) *
+ * File automatically generated by rebuild_wrappers.py (v1.3.0.11) *
  *******************************************************************/
 #ifndef __WRAPPER_H_
 #define __WRAPPER_H_
diff --git a/src/wrapped/wrappedbz2.c b/src/wrapped/wrappedbz2.c
index 0f4b76b8..686d845f 100755
--- a/src/wrapped/wrappedbz2.c
+++ b/src/wrapped/wrappedbz2.c
@@ -54,6 +54,7 @@ void* getBz2My(library_t* lib)
 
 void freeBz2My(void* lib)
 {
+    (void)lib;
     //bz2_my_t *my = (bz2_my_t *)lib;
 }
 
@@ -159,6 +160,7 @@ typedef struct {
 
 EXPORT int my_BZ2_bzCompressInit(x64emu_t* emu, my_bz_stream_t* strm, int blocksize, int verbosity, int work)
 {
+    (void)emu;
     library_t * lib = GetLibInternal(bz2Name);
     bz2_my_t *my = (bz2_my_t*)lib->priv.w.p2;
     WRAP_BZ(strm);
@@ -169,6 +171,7 @@ EXPORT int my_BZ2_bzCompressInit(x64emu_t* emu, my_bz_stream_t* strm, int blocks
 
 EXPORT int my_BZ2_bzCompress(x64emu_t* emu, my_bz_stream_t* strm, int action)
 {
+    (void)emu;
     library_t * lib = GetLibInternal(bz2Name);
     bz2_my_t *my = (bz2_my_t*)lib->priv.w.p2;
     WRAP_BZ(strm);
@@ -179,6 +182,7 @@ EXPORT int my_BZ2_bzCompress(x64emu_t* emu, my_bz_stream_t* strm, int action)
 
 EXPORT int my_BZ2_bzCompressEnd(x64emu_t* emu, my_bz_stream_t* strm)
 {
+    (void)emu;
     library_t * lib = GetLibInternal(bz2Name);
     bz2_my_t *my = (bz2_my_t*)lib->priv.w.p2;
     WRAP_BZ(strm);
@@ -189,6 +193,7 @@ EXPORT int my_BZ2_bzCompressEnd(x64emu_t* emu, my_bz_stream_t* strm)
 
 EXPORT int my_BZ2_bzDecompressInit(x64emu_t* emu, my_bz_stream_t* strm, int verbosity, int small)
 {
+    (void)emu;
     library_t * lib = GetLibInternal(bz2Name);
     bz2_my_t *my = (bz2_my_t*)lib->priv.w.p2;
     WRAP_BZ(strm);
@@ -199,6 +204,7 @@ EXPORT int my_BZ2_bzDecompressInit(x64emu_t* emu, my_bz_stream_t* strm, int verb
 
 EXPORT int my_BZ2_bzDecompress(x64emu_t* emu, my_bz_stream_t* strm)
 {
+    (void)emu;
     library_t * lib = GetLibInternal(bz2Name);
     bz2_my_t *my = (bz2_my_t*)lib->priv.w.p2;
     WRAP_BZ(strm);
@@ -209,6 +215,7 @@ EXPORT int my_BZ2_bzDecompress(x64emu_t* emu, my_bz_stream_t* strm)
 
 EXPORT int my_BZ2_bzDecompressEnd(x64emu_t* emu, my_bz_stream_t* strm)
 {
+    (void)emu;
     library_t * lib = GetLibInternal(bz2Name);
     bz2_my_t *my = (bz2_my_t*)lib->priv.w.p2;
     WRAP_BZ(strm);
@@ -227,4 +234,3 @@ EXPORT int my_BZ2_bzDecompressEnd(x64emu_t* emu, my_bz_stream_t* strm)
     my_lib = NULL;
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedcrypto.c b/src/wrapped/wrappedcrypto.c
index 1cfcf62f..aad3ec7a 100755
--- a/src/wrapped/wrappedcrypto.c
+++ b/src/wrapped/wrappedcrypto.c
@@ -69,6 +69,7 @@ void* getCryptoMy(library_t* lib)
 
 void freeCryptoMy(void* lib)
 {
+    (void)lib;
     //crypto_my_t *my = (crypto_my_t *)lib;
 }
 
@@ -228,106 +229,106 @@ static void* find_passphrase_Fct(void* fct)
 
 EXPORT int32_t my_ENGINE_ctrl(x64emu_t* emu, void* e, int32_t cmd, int32_t i, void* p, void* f)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     return my->ENGINE_ctrl(e, cmd, i, p, find_ENGINE_ctrl_cb_Fct(f));
 }
 
 EXPORT int32_t my_ENGINE_ctrl_cmd(x64emu_t* emu, void* e, void* cmd, long i, void* p, void* f, int optional)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     return my->ENGINE_ctrl_cmd(e, cmd, i, p, find_ENGINE_ctrl_cb_Fct(f), optional);
 }
 
 EXPORT void my_CRYPTO_set_id_callback(x64emu_t* emu, void* cb)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     my->CRYPTO_set_id_callback(find_id_func_Fct(cb));
 }
 
 EXPORT void my_CRYPTO_set_locking_callback(x64emu_t* emu, void* cb)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     my->CRYPTO_set_locking_callback(find_lock_func_Fct(cb));
 }
 
 EXPORT void my_PEM_read_bio_DSAPrivateKey(x64emu_t* emu, void* bp, void* x, void* cb, void* u)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     my->PEM_read_bio_DSAPrivateKey(bp, x, find_passphrase_Fct(cb), u);
 }
 
 EXPORT void my_PEM_read_bio_DSA_PUBKEY(x64emu_t* emu, void* bp, void* x, void* cb, void* u)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     my->PEM_read_bio_DSA_PUBKEY(bp, x, find_passphrase_Fct(cb), u);
 }
 
 EXPORT void my_PEM_read_bio_RSAPrivateKey(x64emu_t* emu, void* bp, void* x, void* cb, void* u)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     my->PEM_read_bio_RSAPrivateKey(bp, x, find_passphrase_Fct(cb), u);
 }
 
 EXPORT void my_PEM_read_bio_RSA_PUBKEY(x64emu_t* emu, void* bp, void* x, void* cb, void* u)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     my->PEM_read_bio_RSA_PUBKEY(bp, x, find_passphrase_Fct(cb), u);
 }
 
 EXPORT void my_PEM_read_bio_ECPrivateKey(x64emu_t* emu, void* bp, void* x, void* cb, void* u)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     my->PEM_read_bio_ECPrivateKey(bp, x, find_passphrase_Fct(cb), u);
 }
 
 EXPORT void my_PEM_read_bio_EC_PUBKEY(x64emu_t* emu, void* bp, void* x, void* cb, void* u)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     my->PEM_read_bio_EC_PUBKEY(bp, x, find_passphrase_Fct(cb), u);
 }
 
 EXPORT int my_PEM_write_bio_DSAPrivateKey(x64emu_t* emu, void* bp, void* x, void* e, void* str, int len, void* cb, void* u)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     return my->PEM_write_bio_DSAPrivateKey(bp, x, e, str, len, find_passphrase_Fct(cb), u);
 }
 
 EXPORT int my_PEM_write_bio_RSAPrivateKey(x64emu_t* emu, void* bp, void* x, void* e, void* str, int len, void* cb, void* u)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     return my->PEM_write_bio_RSAPrivateKey(bp, x, e, str, len, find_passphrase_Fct(cb), u);
 }
 
 EXPORT int my_PEM_write_bio_ECPrivateKey(x64emu_t* emu, void* bp, void* x, void* e, void* str, int len, void* cb, void* u)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     return my->PEM_write_bio_ECPrivateKey(bp, x, e, str, len, find_passphrase_Fct(cb), u);
 }
 
 EXPORT void* my_sk_new(x64emu_t* emu, void* f)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     return my->sk_new(find_cmp_fnc_Fct(f));
 }
 
 EXPORT void my_sk_pop_free(x64emu_t* emu, void* st, void* f)
 {
+    (void)emu;
     crypto_my_t *my = (crypto_my_t*)my_lib->priv.w.p2;
-
     my->sk_pop_free(st, find_free_fnc_Fct(f));
 }
 
diff --git a/src/wrapped/wrappedcurl.c b/src/wrapped/wrappedcurl.c
index 9bb7867d..e7955c1b 100755
--- a/src/wrapped/wrappedcurl.c
+++ b/src/wrapped/wrappedcurl.c
@@ -48,8 +48,8 @@ void* getCurlMy(library_t* lib)
 
 void freeCurlMy(void* lib)
 {
+    (void)lib;
 //    curl_my_t *my = (curl_my_t *)lib;
-
 }
 #undef SUPER
 
@@ -489,6 +489,7 @@ static void* find_progress_Fct(void* fct)
 
 EXPORT uint32_t my_curl_easy_setopt(x64emu_t* emu, void* handle, uint32_t option, void* param)
 {
+    (void)emu;
     curl_my_t *my = (curl_my_t*)my_lib->priv.w.p2;
 
     switch(option) {
@@ -559,4 +560,3 @@ EXPORT uint32_t my_curl_easy_setopt(x64emu_t* emu, void* handle, uint32_t option
     my_lib = NULL;
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappeddbus.c b/src/wrapped/wrappeddbus.c
index 3db5a8da..643d15a9 100755
--- a/src/wrapped/wrappeddbus.c
+++ b/src/wrapped/wrappeddbus.c
@@ -68,6 +68,7 @@ static void* getDBusMy(library_t* lib)
 
 static void freeDBusMy(void* lib)
 {
+    (void)lib;
     //dbus_my_t *my = (dbus_my_t *)lib;
 }
 
@@ -398,6 +399,7 @@ static void* finddbus_internal_padFct(void* fct)
 
 EXPORT void my_dbus_timeout_set_data(x64emu_t* emu, void* e, void* p, void* f)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
     my->dbus_timeout_set_data(e, p, find_DBusFreeFunction_Fct(f));
 }
@@ -405,6 +407,7 @@ EXPORT void my_dbus_timeout_set_data(x64emu_t* emu, void* e, void* p, void* f)
 
 EXPORT int32_t my_dbus_connection_set_timeout_functions(x64emu_t* emu, void* c, void* a, void* r, void* t, void* d, void* f)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
 
     return my->dbus_connection_set_timeout_functions(c, 
@@ -416,18 +419,21 @@ EXPORT int32_t my_dbus_connection_set_timeout_functions(x64emu_t* emu, void* c,
 
 EXPORT int my_dbus_connection_add_filter(x64emu_t* emu, void* connection, void* fnc, void* data, void* fr)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
     return my->dbus_connection_add_filter(connection, find_DBusHandleMessageFunction_Fct(fnc), data, find_DBusFreeFunction_Fct(fr));
 }
 
 EXPORT void my_dbus_connection_remove_filter(x64emu_t* emu, void* connection, void* fnc, void* data)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
     my->dbus_connection_remove_filter(connection, find_DBusHandleMessageFunction_Fct(fnc), data);
 }
 
 EXPORT int my_dbus_message_get_args_valist(x64emu_t* emu, void* message, void* e, int arg, x64_va_list_t b)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
     CONVERT_VALIST(b);
     return my->dbus_message_get_args_valist(message, e, arg, VARARGS);
@@ -435,6 +441,7 @@ EXPORT int my_dbus_message_get_args_valist(x64emu_t* emu, void* message, void* e
 
 /*EXPORT int my_dbus_message_get_args(x64emu_t* emu, void* message, void* e, int arg, uint64_t* V)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
 
     return my->dbus_message_get_args_valist(message, e, arg, V);
@@ -442,6 +449,7 @@ EXPORT int my_dbus_message_get_args_valist(x64emu_t* emu, void* message, void* e
 
 EXPORT int my_dbus_message_set_data(x64emu_t* emu, void* message, int32_t slot, void* data, void* free_func)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
 
     return my->dbus_message_set_data(message, slot, data, find_DBusFreeFunction_Fct(free_func));
@@ -449,6 +457,7 @@ EXPORT int my_dbus_message_set_data(x64emu_t* emu, void* message, int32_t slot,
 
 EXPORT int my_dbus_pending_call_set_notify(x64emu_t* emu, void* pending, void* func, void* data, void* free_func)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
 
     return my->dbus_pending_call_set_notify(pending, findDBusPendingCallNotifyFunctionFct(func), data, find_DBusFreeFunction_Fct(free_func));
@@ -456,6 +465,7 @@ EXPORT int my_dbus_pending_call_set_notify(x64emu_t* emu, void* pending, void* f
 
 EXPORT int my_dbus_pending_call_set_data(x64emu_t* emu, void* pending, int32_t slot, void* data, void* free_func)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
 
     return my->dbus_pending_call_set_data(pending, slot, data, find_DBusFreeFunction_Fct(free_func));
@@ -463,6 +473,7 @@ EXPORT int my_dbus_pending_call_set_data(x64emu_t* emu, void* pending, int32_t s
 
 EXPORT void my_dbus_watch_set_data(x64emu_t* emu, void* watch, void* data, void* free_func)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
 
     my->dbus_watch_set_data(watch, data, find_DBusFreeFunction_Fct(free_func));
@@ -470,6 +481,7 @@ EXPORT void my_dbus_watch_set_data(x64emu_t* emu, void* watch, void* data, void*
 
 EXPORT void my_dbus_connection_set_dispatch_status_function(x64emu_t* emu, void* connection, void* dispatch, void* data, void* free_func)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
 
     my->dbus_connection_set_dispatch_status_function(connection, findDBusDispatchStatusFunctionFct(dispatch), data, find_DBusFreeFunction_Fct(free_func));
@@ -477,6 +489,7 @@ EXPORT void my_dbus_connection_set_dispatch_status_function(x64emu_t* emu, void*
 
 EXPORT int my_dbus_connection_set_watch_functions(x64emu_t* emu, void* connection, void* add, void* remove, void* toggled, void* data, void* free_func)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
 
     return my->dbus_connection_set_watch_functions(connection, findDBusAddWatchFunctionFct(add), findDBusRemoveWatchFunctionFct(remove), findDBusWatchToggledFunctionFct(toggled), data, find_DBusFreeFunction_Fct(free_func));
@@ -494,6 +507,7 @@ typedef struct my_DBusObjectPathVTable_s
 
 EXPORT int my_dbus_connection_try_register_object_path(x64emu_t* emu, void* connection, void* path, my_DBusObjectPathVTable_t* vtable, void* data, void* error)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
 
     my_DBusObjectPathVTable_t vt = {0};
@@ -511,6 +525,7 @@ EXPORT int my_dbus_connection_try_register_object_path(x64emu_t* emu, void* conn
 
 EXPORT int my_dbus_connection_set_data(x64emu_t* emu, void* connection, int slot, void* data, void* free_func)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
 
     return my->dbus_connection_set_data(connection, slot, data, find_DBusFreeFunction_Fct(free_func));
@@ -518,6 +533,7 @@ EXPORT int my_dbus_connection_set_data(x64emu_t* emu, void* connection, int slot
 
 EXPORT void my_dbus_connection_set_wakeup_main_function(x64emu_t* emu, void* connection, void* wakeup, void* data, void* free_func)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
 
     my->dbus_connection_set_wakeup_main_function(connection, find_DBusWakeupMainFunction_Fct(wakeup), data, find_DBusFreeFunction_Fct(free_func));
@@ -525,6 +541,7 @@ EXPORT void my_dbus_connection_set_wakeup_main_function(x64emu_t* emu, void* con
 
 EXPORT int my_dbus_connection_try_register_fallback(x64emu_t* emu, void* connection, void* path, my_DBusObjectPathVTable_t* vtable, void* data, void* error)
 {
+    (void)emu;
     dbus_my_t *my = (dbus_my_t*)my_lib->priv.w.p2;
 
     my_DBusObjectPathVTable_t vt = {0};
@@ -552,4 +569,3 @@ EXPORT int my_dbus_connection_try_register_fallback(x64emu_t* emu, void* connect
     my_lib = NULL;
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedfontconfig.c b/src/wrapped/wrappedfontconfig.c
index 007d1bd5..5481fef7 100755
--- a/src/wrapped/wrappedfontconfig.c
+++ b/src/wrapped/wrappedfontconfig.c
@@ -34,6 +34,7 @@ void* getFontconfigMy(library_t* lib)
 {
     fontconfig_my_t* my = (fontconfig_my_t*)calloc(1, sizeof(fontconfig_my_t));
     #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A);
+    (void)lib; // So many wrapping here
     SUPER()
     #undef GO
     return my;
@@ -42,6 +43,7 @@ void* getFontconfigMy(library_t* lib)
 
 void freeFontconfigMy(void* lib)
 {
+    (void)lib;
     //fontconfig_my_t *my = (fontconfig_my_t *)lib;
 }
 
@@ -53,4 +55,3 @@ void freeFontconfigMy(void* lib)
     free(lib->priv.w.p2);
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedfreetype.c b/src/wrapped/wrappedfreetype.c
index 25a25e47..f830e10b 100755
--- a/src/wrapped/wrappedfreetype.c
+++ b/src/wrapped/wrappedfreetype.c
@@ -83,6 +83,7 @@ void* getFreeTypeMy(library_t* lib)
 
 void freeFreeTypeMy(void* lib)
 {
+    (void)lib;
     //freetype_my_t *my = (freetype_my_t *)lib;
 }
 
@@ -133,6 +134,7 @@ static void my_FT_Stream_CloseFunc(FT_StreamRec_t* stream)
 
 EXPORT int my_FT_Open_Face(x64emu_t* emu, void* library, FT_Open_Args_t* args, long face_index, void* aface)
 {
+    (void)emu;
     library_t* lib = GetLibInternal(freetypeName);
     freetype_my_t* my = (freetype_my_t*)lib->priv.w.p2;
 
@@ -155,6 +157,7 @@ EXPORT int my_FT_Open_Face(x64emu_t* emu, void* library, FT_Open_Args_t* args, l
 
 EXPORT int my_FTC_Manager_New(x64emu_t* emu, void* l, uint32_t max_faces, uint32_t max_sizes, uintptr_t max_bytes, void* req, void* data, void* aman)
 {
+    (void)emu;
     library_t* lib = GetLibInternal(freetypeName);
     freetype_my_t* my = (freetype_my_t*)lib->priv.w.p2;
 
diff --git a/src/wrapped/wrappedgnutls.c b/src/wrapped/wrappedgnutls.c
index 287a1005..5ee86f8a 100755
--- a/src/wrapped/wrappedgnutls.c
+++ b/src/wrapped/wrappedgnutls.c
@@ -50,6 +50,7 @@ void* getGnutlsMy(library_t* lib)
 
 void freeGnutlsMy(void* lib)
 {
+    (void)lib;
     //gnutls_my_t *my = (gnutls_my_t *)lib;
 }
 
@@ -114,21 +115,21 @@ static void* find_pullpush_Fct(void* fct)
 
 EXPORT void my_gnutls_global_set_log_function(x64emu_t* emu, void* f)
 {
+    (void)emu;
     gnutls_my_t *my = (gnutls_my_t*)my_lib->priv.w.p2;
-
     my->gnutls_global_set_log_function(find_gnutls_log_Fct(f));
 }
 
 EXPORT void my_gnutls_transport_set_pull_function(x64emu_t* emu, void* session, void* f)
 {
+    (void)emu;
     gnutls_my_t *my = (gnutls_my_t*)my_lib->priv.w.p2;
-
     my->gnutls_transport_set_pull_function(session, find_pullpush_Fct(f));
 }
 EXPORT void my_gnutls_transport_set_push_function(x64emu_t* emu, void* session, void* f)
 {
+    (void)emu;
     gnutls_my_t *my = (gnutls_my_t*)my_lib->priv.w.p2;
-
     my->gnutls_transport_set_push_function(session, find_pullpush_Fct(f));
 }
 
@@ -142,4 +143,3 @@ EXPORT void my_gnutls_transport_set_push_function(x64emu_t* emu, void* session,
     free(lib->priv.w.p2);
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedlib_init.h b/src/wrapped/wrappedlib_init.h
index 3f946286..cd59efe1 100755
--- a/src/wrapped/wrappedlib_init.h
+++ b/src/wrapped/wrappedlib_init.h
@@ -84,7 +84,9 @@ static const map_onedata_t MAPNAME(mydatamap)[] = {
 
 int FUNC(_init)(library_t* lib, box64context_t* box64)
 {
-// Init first
+    (void)box64;
+    
+    // Init first
     free(lib->path); lib->path=NULL;
 #ifdef PRE_INIT
     PRE_INIT
diff --git a/src/wrapped/wrappedlibasound.c b/src/wrapped/wrappedlibasound.c
index acb5f3de..13885062 100755
--- a/src/wrapped/wrappedlibasound.c
+++ b/src/wrapped/wrappedlibasound.c
@@ -30,6 +30,7 @@ typedef int     (*iFpppp_t)     (void*, void*, void*, void*);
 EXPORT uintptr_t my_snd_lib_error = 0;
 static void default_error_handler(const char *file, int line, const char *function, int err, const char *fmt, va_list ap)
 {
+    (void)file; (void)line; (void)function; (void)err;
     vprintf(fmt, ap);
 }
 
@@ -53,13 +54,14 @@ void* getAsoundMy(library_t* lib)
     #undef GO
     // setup custom error handler
     my_snd_lib_error = AddCheckBridge(my_context->system, vFpipipV, default_error_handler, 0, "ASoundCustomErrorHandler");
-    //all done
+    // all done
     return my;
 }
 #undef SUPER
 
 void freeAsoundMy(void* lib)
 {
+    (void)lib;
     // asound_my_t *my = (asound_my_t *)lib;
     my_snd_lib_error = 0;   // no removing of bridge
 }
@@ -111,6 +113,7 @@ EXPORT int my_snd_async_add_pcm_handler(x64emu_t *emu, void *handler, void* pcm,
 static void* current_error_handler = NULL;
 static void dummy_error_handler(const char *file, int line, const char *function, int err, const char *fmt, ...)
 {
+    (void)function; (void)err;
     va_list ap;
 
     fprintf(ftrace, "Warning: this is a dummy snd_lib error handler\n");
@@ -123,6 +126,7 @@ static void dummy_error_handler(const char *file, int line, const char *function
 
 static void empty_error_handler(const char *file, int line, const char *function, int err, const char *fmt, ...)
 {
+    (void)file; (void)line; (void)function; (void)err; (void)fmt;
     // do nothing
 }
 
@@ -133,7 +137,7 @@ EXPORT int my_snd_lib_error_set_handler(x64emu_t* emu, void* handler)
     void *error_handler;
     uint8_t *code = (uint8_t *)handler;
     if (code) {
-        if (code && ((code[0] == 0xC3) || ((code[0] == 0xF3) && (code[1] == 0xC3)))) {
+        if ((code[0] == 0xC3) || ((code[0] == 0xF3) && (code[1] == 0xC3))) {
             error_handler = &empty_error_handler;
         } else {
             error_handler = &dummy_error_handler;
@@ -175,4 +179,3 @@ EXPORT void* my_snd_dlsym(x64emu_t* emu, void* handle, void* name, void* version
     free(lib->priv.w.p2);
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedlibc.c b/src/wrapped/wrappedlibc.c
index 09b52edd..881d57ce 100755
--- a/src/wrapped/wrappedlibc.c
+++ b/src/wrapped/wrappedlibc.c
@@ -110,6 +110,7 @@ void* getLIBCMy(library_t* lib)
 
 void freeLIBCMy(void* lib)
 {
+    (void)lib;
     // empty for now
 }
 
@@ -339,6 +340,7 @@ int32_t my___libc_start_main(x64emu_t* emu, int *(main) (int, char * *, char * *
 EXPORT void my___libc_init_first(x64emu_t* emu, int argc, char* arg0, char** b)
 {
     // do nothing specific for now
+    (void)emu; (void)argc; (void)arg0; (void)b;
     return;
 }
 uintptr_t my_syscall(x64emu_t *emu); // implemented in x64syscall.c
@@ -354,11 +356,13 @@ void EXPORT my___stack_chk_fail(x64emu_t* emu)
 }
 void EXPORT my___gmon_start__(x64emu_t *emu)
 {
+    (void)emu;
     printf_log(LOG_DEBUG, "__gmon_start__ called (dummy call)\n");
 }
 
-int EXPORT my___cxa_atexit(x64emu_t* emu, void* p, void* a, void* d)
+int EXPORT my___cxa_atexit(x64emu_t* emu, void* p, void* a, void* dso_handle)
 {
+    (void)dso_handle;
     AddCleanup1Arg(emu, p, a);
     return 0;
 }
@@ -516,13 +520,13 @@ int of_unconvert(int a)
 }
 #undef SUPER
 
-EXPORT void* my__ZGTtnaX (size_t a) { printf("warning _ZGTtnaX called\n"); return NULL; }
-EXPORT void my__ZGTtdlPv (void* a) { printf("warning _ZGTtdlPv called\n"); }
-EXPORT uint8_t my__ITM_RU1(const uint8_t * a) { printf("warning _ITM_RU1 called\n"); return 0; }
-EXPORT uint32_t my__ITM_RU4(const uint32_t * a) { printf("warning _ITM_RU4 called\n"); return 0; }
-EXPORT uint64_t my__ITM_RU8(const uint64_t * a) { printf("warning _ITM_RU8 called\n"); return 0; }
-EXPORT void my__ITM_memcpyRtWn(void * a, const void * b, size_t c) {printf("warning _ITM_memcpyRtWn called\n");  }
-EXPORT void my__ITM_memcpyRnWt(void * a, const void * b, size_t c) {printf("warning _ITM_memcpyRtWn called\n"); }
+EXPORT void* my__ZGTtnaX (size_t a) { (void)a; printf("warning _ZGTtnaX called\n"); return NULL; }
+EXPORT void my__ZGTtdlPv (void* a) { (void)a; printf("warning _ZGTtdlPv called\n"); }
+EXPORT uint8_t my__ITM_RU1(const uint8_t * a) { (void)a; printf("warning _ITM_RU1 called\n"); return 0; }
+EXPORT uint32_t my__ITM_RU4(const uint32_t * a) { (void)a; printf("warning _ITM_RU4 called\n"); return 0; }
+EXPORT uint64_t my__ITM_RU8(const uint64_t * a) { (void)a; printf("warning _ITM_RU8 called\n"); return 0; }
+EXPORT void my__ITM_memcpyRtWn(void * a, const void * b, size_t c) { (void)a; (void)b; (void)c; printf("warning _ITM_memcpyRtWn called\n"); }
+EXPORT void my__ITM_memcpyRnWt(void * a, const void * b, size_t c) { (void)a; (void)b; (void)c; printf("warning _ITM_memcpyRnWt called\n"); }
 
 EXPORT void my_longjmp(x64emu_t* emu, /*struct __jmp_buf_tag __env[1]*/void *p, int32_t __val);
 EXPORT void my__longjmp(x64emu_t* emu, /*struct __jmp_buf_tag __env[1]*/void *p, int32_t __val) __attribute__((alias("my_longjmp")));
@@ -540,18 +544,21 @@ EXPORT int my_printf(x64emu_t *emu, void* fmt, void* b) {
 }
 EXPORT int my___printf_chk(x64emu_t *emu, int chk, void* fmt, void* b)
 {
+    (void)chk;
     myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 2);
     PREPARE_VALIST;
     return vprintf((const char*)fmt, VARARGS);
 }
 
 EXPORT int my_vprintf(x64emu_t *emu, void* fmt, x64_va_list_t b) {
+    (void)emu;
     CONVERT_VALIST(b);
     return vprintf(fmt, VARARGS);
 }
 EXPORT int my___vprintf_chk(x64emu_t *emu, void* fmt, x64_va_list_t b) __attribute__((alias("my_vprintf")));
 
 EXPORT int my_vfprintf(x64emu_t *emu, void* F, void* fmt, x64_va_list_t b) {
+    (void)emu;
     CONVERT_VALIST(b);
     return vfprintf(F, fmt, VARARGS);
 }
@@ -564,6 +571,7 @@ EXPORT int my_fprintf(x64emu_t *emu, void* F, void* fmt, void* b)  {
     return vfprintf(F, fmt, VARARGS);
 }
 EXPORT int my___fprintf_chk(x64emu_t *emu, void* F, int flag, void* fmt, void* b)  {
+    (void)flag;
     myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 3);
     PREPARE_VALIST;
     return vfprintf(F, fmt, VARARGS);
@@ -646,6 +654,7 @@ EXPORT int my_snprintf(x64emu_t* emu, void* buff, size_t s, void * fmt, uint64_t
 EXPORT int my___snprintf(x64emu_t* emu, void* buff, size_t s, void * fmt, uint64_t * b) __attribute__((alias("my_snprintf")));
 EXPORT int my___snprintf_chk(x64emu_t* emu, void* buff, size_t s, int flags, size_t maxlen, void * fmt, uint64_t * b)
 {
+    (void)flags; (void)maxlen;
     myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 5);
     PREPARE_VALIST;
     int r = vsnprintf(buff, s, fmt, VARARGS);
@@ -658,6 +667,7 @@ EXPORT int my_sprintf(x64emu_t* emu, void* buff, void * fmt, void * b) {
     return vsprintf(buff, (const char*)fmt, VARARGS);
 }
 EXPORT int my___sprintf_chk(x64emu_t* emu, void* buff, int flag, size_t l, void * fmt, void * b) {
+    (void)flag; (void)l;
     myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 4);
     PREPARE_VALIST;
     return vsprintf(buff, (const char*)fmt, VARARGS);
@@ -678,31 +688,29 @@ EXPORT int my___asprintf(x64emu_t* emu, void** buff, void * fmt, void * b, va_li
 #endif
 
 EXPORT int my_vasprintf(x64emu_t* emu, char** buff, void* fmt, x64_va_list_t b) {
+    (void)emu;
     CONVERT_VALIST(b);
-
     return vasprintf(buff, fmt, VARARGS);
 }
 
 EXPORT int my_vsprintf(x64emu_t* emu, void* buff,  void * fmt, x64_va_list_t b) {
+    (void)emu;
     CONVERT_VALIST(b);
-
     return vsprintf(buff, fmt, VARARGS);
 }
 EXPORT int my___vsprintf_chk(x64emu_t* emu, void* buff, void * fmt, x64_va_list_t b) __attribute__((alias("my_vsprintf")));
 
 EXPORT int my_vfscanf(x64emu_t* emu, void* stream, void* fmt, x64_va_list_t b)
 {
+    (void)emu;
     CONVERT_VALIST(b);
-
     return vfscanf(stream, fmt, VARARGS);
 }
 
-
-
 EXPORT int my_vsscanf(x64emu_t* emu, void* stream, void* fmt, x64_va_list_t b)
 {
+    (void)emu;
     CONVERT_VALIST(b);
-
     return vsscanf(stream, fmt, VARARGS);
 }
 
@@ -738,6 +746,7 @@ EXPORT int my___isoc99_sscanf(x64emu_t* emu, void* stream, void* fmt, uint64_t*
 }
 
 EXPORT int my_vsnprintf(x64emu_t* emu, void* buff, size_t s, void * fmt, x64_va_list_t b) {
+    (void)emu;
     CONVERT_VALIST(b);
     int r = vsnprintf(buff, s, fmt, VARARGS);
     return r;
@@ -763,6 +772,7 @@ EXPORT int my_vasprintf(x64emu_t* emu, void* strp, void* fmt, void* b, va_list V
 #endif
 EXPORT int my___vasprintf_chk(x64emu_t* emu, void* buff, int flags, void* fmt, x64_va_list_t b)
 {
+    (void)emu; (void)flags;
     CONVERT_VALIST(b);
     int r = vasprintf(buff, fmt, VARARGS);
     return r;
@@ -781,6 +791,7 @@ EXPORT int my___asprintf_chk(x64emu_t* emu, void* result_ptr, int flags, void* f
 }
 #endif
 EXPORT int my_vswprintf(x64emu_t* emu, void* buff, size_t s, void * fmt, x64_va_list_t b) {
+    (void)emu;
     CONVERT_VALIST(b);
     int r = vswprintf(buff, s, fmt, VARARGS);
     return r;
@@ -828,6 +839,7 @@ EXPORT void my_syslog(x64emu_t* emu, int priority, const char* fmt, uint64_t* b)
 }
 EXPORT void my___syslog_chk(x64emu_t* emu, int priority, int flags, const char* fmt, uint64_t* b)
 {
+    (void)flags;
     myStackAlign(emu, fmt, b, emu->scratch, R_EAX, 3);
     PREPARE_VALIST;
     return vsyslog(priority, fmt, VARARGS);
@@ -835,6 +847,8 @@ EXPORT void my___syslog_chk(x64emu_t* emu, int priority, int flags, const char*
 
 EXPORT int my___swprintf_chk(x64emu_t* emu, void* s, size_t n, int32_t flag, size_t slen, void* fmt, uint64_t* b)
 {
+    (void)flag;
+    (void)slen;
     myStackAlignW(emu, (const char*)fmt, b, emu->scratch, R_EAX, 5);
     PREPARE_VALIST;
     return vswprintf(s, n, (const wchar_t*)fmt, VARARGS);
@@ -856,15 +870,17 @@ EXPORT void my__ITM_addUserCommitAction(x64emu_t* emu, void* cb, uint32_t b, voi
     my->_ITM_addUserCommitAction(libc1ArgCallback, b, cbemu);
     // should keep track of cbemu to remove at some point...
     #else
+    (void)emu; (void)cb; (void)b; (void)c;
     printf("warning _ITM_addUserCommitAction called\n");
     #endif
 }
-EXPORT void my__ITM_registerTMCloneTable(x64emu_t* emu, void* p, uint32_t s) {}
-EXPORT void my__ITM_deregisterTMCloneTable(x64emu_t* emu, void* p) {}
+EXPORT void my__ITM_registerTMCloneTable(x64emu_t* emu, void* p, uint32_t s) { (void)emu; (void)p; (void)s; }
+EXPORT void my__ITM_deregisterTMCloneTable(x64emu_t* emu, void* p) { (void)emu; (void)p; }
 
 
 EXPORT int my___fxstat(x64emu_t *emu, int vers, int fd, void* buf)
 {
+    (void)emu; (void)vers;
     struct stat64 st;
     int r = fstat64(fd, &st);
     UnalignStat64(&st, buf);
@@ -873,6 +889,7 @@ EXPORT int my___fxstat(x64emu_t *emu, int vers, int fd, void* buf)
 
 EXPORT int my___fxstat64(x64emu_t *emu, int vers, int fd, void* buf)
 {
+    (void)emu; (void)vers;
     struct stat64 st;
     int r = fstat64(fd, &st);
     //int r = syscall(__NR_stat64, fd, &st);
@@ -882,6 +899,7 @@ EXPORT int my___fxstat64(x64emu_t *emu, int vers, int fd, void* buf)
 
 EXPORT int my___xstat(x64emu_t* emu, int v, void* path, void* buf)
 {
+    (void)emu; (void)v;
     struct stat64 st;
     int r = stat64((const char*)path, &st);
     UnalignStat64(&st, buf);
@@ -890,6 +908,7 @@ EXPORT int my___xstat(x64emu_t* emu, int v, void* path, void* buf)
 
 EXPORT int my___xstat64(x64emu_t* emu, int v, void* path, void* buf)
 {
+    (void)emu; (void)v;
     struct stat64 st;
     int r = stat64((const char*)path, &st);
     UnalignStat64(&st, buf);
@@ -898,6 +917,7 @@ EXPORT int my___xstat64(x64emu_t* emu, int v, void* path, void* buf)
 
 EXPORT int my___lxstat(x64emu_t* emu, int v, void* name, void* buf)
 {
+    (void)emu; (void)v;
     struct stat64 st;
     int r = lstat64((const char*)name, &st);
     UnalignStat64(&st, buf);
@@ -906,6 +926,7 @@ EXPORT int my___lxstat(x64emu_t* emu, int v, void* name, void* buf)
 
 EXPORT int my___lxstat64(x64emu_t* emu, int v, void* name, void* buf)
 {
+    (void)emu; (void)v;
     struct stat64 st;
     int r = lstat64((const char*)name, &st);
     UnalignStat64(&st, buf);
@@ -914,6 +935,7 @@ EXPORT int my___lxstat64(x64emu_t* emu, int v, void* name, void* buf)
 
 EXPORT int my___fxstatat(x64emu_t* emu, int v, int d, void* path, void* buf, int flags)
 {
+    (void)emu; (void)v;
     struct  stat64 st;
     int r = fstatat64(d, path, &st, flags);
     UnalignStat64(&st, buf);
@@ -922,6 +944,7 @@ EXPORT int my___fxstatat(x64emu_t* emu, int v, int d, void* path, void* buf, int
 
 EXPORT int my___fxstatat64(x64emu_t* emu, int v, int d, void* path, void* buf, int flags)
 {
+    (void)emu; (void)v;
     struct  stat64 st;
     int r = fstatat64(d, path, &st, flags);
     UnalignStat64(&st, buf);
@@ -979,20 +1002,24 @@ EXPORT void my_qsort_r(x64emu_t* emu, void* base, size_t nmemb, size_t size, voi
 }
 EXPORT void* my_bsearch(x64emu_t* emu, void* key, void* base, size_t nmemb, size_t size, void* fnc)
 {
+    (void)emu;
     return bsearch(key, base, nmemb, size, findcompareFct(fnc));
 }
 
 EXPORT void* my_lsearch(x64emu_t* emu, void* key, void* base, size_t* nmemb, size_t size, void* fnc)
 {
+    (void)emu;
     return lsearch(key, base, nmemb, size, findcompareFct(fnc));
 }
 EXPORT void* my_lfind(x64emu_t* emu, void* key, void* base, size_t* nmemb, size_t size, void* fnc)
 {
+    (void)emu;
     return lfind(key, base, nmemb, size, findcompareFct(fnc));
 }
 
 EXPORT void* my_fts_open(x64emu_t* emu, void* path, int options, void* c)
 {
+    (void)emu;
     return fts_open(path, options, findcompareFct(c));
 }
 #if 0
@@ -1247,13 +1274,13 @@ EXPORT int32_t my_open(x64emu_t* emu, void* pathname, int32_t flags, uint32_t mo
 }
 EXPORT int32_t my___open(x64emu_t* emu, void* pathname, int32_t flags, uint32_t mode) __attribute__((alias("my_open")));
 
-#ifdef DYNAREC
+//#ifdef DYNAREC
 //static int hasDBFromAddress(uintptr_t addr)
 //{
 //    int idx = (addr>>DYNAMAP_SHIFT);
 //    return getDB(idx)?1:0;
 //}
-#endif
+//#endif
 
 //EXPORT int32_t my_read(int fd, void* buf, uint32_t count)
 //{
@@ -1440,24 +1467,28 @@ EXPORT int32_t my_epoll_wait(x64emu_t* emu, int32_t epfd, void* events, int32_t
 #endif
 EXPORT int32_t my_glob64(x64emu_t *emu, void* pat, int32_t flags, void* errfnc, void* pglob)
 {
+    (void)emu;
     return glob64(pat, flags, findgloberrFct(errfnc), pglob);
 }
 EXPORT int32_t my_glob(x64emu_t *emu, void* pat, int32_t flags, void* errfnc, void* pglob) __attribute__((alias("my_glob64")));
 
 EXPORT int my_scandir64(x64emu_t *emu, void* dir, void* namelist, void* sel, void* comp)
 {
+    (void)emu;
     return scandir64(dir, namelist, findfilter64Fct(sel), findcompare64Fct(comp));
 }
 EXPORT int my_scandir(x64emu_t *emu, void* dir, void* namelist, void* sel, void* comp) __attribute__((alias("my_scandir64")));
 
 EXPORT int my_ftw64(x64emu_t* emu, void* filename, void* func, int descriptors)
 {
+    (void)emu;
     return ftw64(filename, findftw64Fct(func), descriptors);
 }
 EXPORT int my_ftw(x64emu_t* emu, void* filename, void* func, int descriptors) __attribute__((alias("my_ftw64")));
 
 EXPORT int32_t my_nftw64(x64emu_t* emu, void* pathname, void* B, int32_t nopenfd, int32_t flags)
 {
+    (void)emu;
     return nftw64(pathname, findnftw64Fct(B), nopenfd, flags);
 }
 
@@ -1604,12 +1635,14 @@ EXPORT void my__Jv_RegisterClasses() {}
 
 EXPORT int32_t my___cxa_thread_atexit_impl(x64emu_t* emu, void* dtor, void* obj, void* dso)
 {
+    (void)emu;
     printf_log(LOG_INFO, "Warning, call to __cxa_thread_atexit_impl(%p, %p, %p) ignored\n", dtor, obj, dso);
     return 0;
 }
 
 EXPORT int32_t my___register_atfork(x64emu_t *emu, void* prepare, void* parent, void* child, void* handle)
 {
+    (void)emu;
     // this is partly incorrect, because the emulated funcionts should be executed by actual fork and not by my_atfork...
     if(my_context->atfork_sz==my_context->atfork_cap) {
         my_context->atfork_cap += 4;
@@ -1642,6 +1675,7 @@ EXPORT int32_t my___poll_chk(void* a, uint32_t b, int c, int l)
 #endif
 EXPORT int32_t my_fcntl64(x64emu_t* emu, int32_t a, int32_t b, void* c)
 {
+    (void)emu;
     if(b==F_SETFL)
         c = (void*)(uintptr_t)of_convert((intptr_t)c);
     #if 0
@@ -1663,6 +1697,7 @@ EXPORT int32_t my_fcntl64(x64emu_t* emu, int32_t a, int32_t b, void* c)
 
 EXPORT int32_t my_fcntl(x64emu_t* emu, int32_t a, int32_t b, void* c)
 {
+    (void)emu;
     if(b==F_SETFL && (intptr_t)c==0xFFFFF7FF) {
         // special case for ~O_NONBLOCK...
         int flags = fcntl(a, F_GETFL);
@@ -1790,9 +1825,11 @@ void stSetup(box64context_t* context)
 EXPORT void my___register_frame_info(void* a, void* b)
 {
     // nothing
+    (void)a; (void)b;
 }
 EXPORT void* my___deregister_frame_info(void* a)
 {
+    (void)a;
     return NULL;
 }
 
@@ -1854,6 +1891,7 @@ EXPORT int32_t my_setjmp(x64emu_t* emu, /*struct __jmp_buf_tag __env[1]*/void *p
 
 EXPORT void my___explicit_bzero_chk(x64emu_t* emu, void* dst, uint32_t len, uint32_t dstlen)
 {
+    (void)emu; (void)dstlen;
     memset(dst, 0, len);
 }
 
@@ -1868,6 +1906,7 @@ EXPORT void* my_realpath(x64emu_t* emu, void* path, void* resolved_path)
 
 EXPORT void* my_mmap64(x64emu_t* emu, void *addr, unsigned long length, int prot, int flags, int fd, int64_t offset)
 {
+    (void)emu;
     if(prot&PROT_WRITE) 
         prot|=PROT_READ;    // PROT_READ is implicit with PROT_WRITE on i386
     if(box64_log<LOG_DEBUG) {dynarec_log(LOG_DEBUG, "mmap64(%p, %lu, 0x%x, 0x%x, %d, %ld) =>", addr, length, prot, flags, fd, offset);}
@@ -1905,6 +1944,7 @@ EXPORT void* my_mmap(x64emu_t* emu, void *addr, unsigned long length, int prot,
 
 EXPORT void* my_mremap(x64emu_t* emu, void* old_addr, size_t old_size, size_t new_size, int flags, void* new_addr)
 {
+    (void)emu;
     dynarec_log(LOG_DEBUG, "mremap(%p, %lu, %lu, %d, %p)=>", old_addr, old_size, new_size, flags, new_addr);
     void* ret = mremap(old_addr, old_size, new_size, flags, new_addr);
     dynarec_log(LOG_DEBUG, "%p\n", ret);
@@ -1954,6 +1994,7 @@ EXPORT void* my_mremap(x64emu_t* emu, void* old_addr, size_t old_size, size_t ne
 
 EXPORT int my_munmap(x64emu_t* emu, void* addr, unsigned long length)
 {
+    (void)emu;
     dynarec_log(LOG_DEBUG, "munmap(%p, %lu)\n", addr, length);
     #ifdef DYNAREC
     if(box64_dynarec) {
@@ -1968,9 +2009,10 @@ EXPORT int my_munmap(x64emu_t* emu, void* addr, unsigned long length)
 
 EXPORT int my_mprotect(x64emu_t* emu, void *addr, unsigned long len, int prot)
 {
+    (void)emu;
     dynarec_log(LOG_DEBUG, "mprotect(%p, %lu, 0x%x)\n", addr, len, prot);
     if(prot&PROT_WRITE) 
-        prot|=PROT_READ;    // PROT_READ is implicit with PROT_WRITE on i386
+        prot|=PROT_READ;    // PROT_READ is implicit with PROT_WRITE on x86_64
     int ret = mprotect(addr, len, prot);
     #ifdef DYNAREC
     if(box64_dynarec) {
@@ -2214,11 +2256,12 @@ EXPORT int my_backtrace(x64emu_t* emu, void** buffer, int size)
 
 EXPORT char** my_backtrace_symbols(x64emu_t* emu, uintptr_t* buffer, int size)
 {
+    (void)emu;
     char** ret = (char**)calloc(1, size*sizeof(char*) + size*100);  // capping each strings to 100 chars
     char* s = (char*)(ret+size*sizeof(char*));
     for (int i=0; i<size; ++i) {
         uintptr_t start = 0;
-        uint32_t sz = 0;
+        uint64_t sz = 0;
         const char* symbname = FindNearestSymbolName(FindElfAddress(my_context, buffer[i]), (void*)buffer[i], &start, &sz);
         if(symbname && buffer[i]>=start && (buffer[i]<(start+sz) || !sz))
             snprintf(s, 100, "%s+%ld [%p]\n", symbname, buffer[i] - start, (void*)buffer[i]);
@@ -2231,10 +2274,11 @@ EXPORT char** my_backtrace_symbols(x64emu_t* emu, uintptr_t* buffer, int size)
 
 EXPORT void my_backtrace_symbols_fd(x64emu_t* emu, uintptr_t* buffer, int size, int fd)
 {
+    (void)emu;
     char s[100];
     for (int i=0; i<size; ++i) {
         uintptr_t start = 0;
-        uint32_t sz = 0;
+        uint64_t sz = 0;
         const char* symbname = FindNearestSymbolName(FindElfAddress(my_context, buffer[i]), (void*)buffer[i], &start, &sz);
         if(symbname && buffer[i]>=start && (buffer[i]<(start+sz) || !sz))
             snprintf(s, 100, "%s+%ld [%p]\n", symbname, buffer[i] - start, (void*)buffer[i]);
diff --git a/src/wrapped/wrappedlibdl.c b/src/wrapped/wrappedlibdl.c
index 91732a61..0d9aa8cb 100755
--- a/src/wrapped/wrappedlibdl.c
+++ b/src/wrapped/wrappedlibdl.c
@@ -185,6 +185,7 @@ int my_dlsym_lib(library_t* lib, const char* rsymbol, uintptr_t *start, uintptr_
 }
 void* my_dlsym(x64emu_t* emu, void *handle, void *symbol)
 {
+    (void)emu;
     dlprivate_t *dl = emu->context->dlprivate;
     uintptr_t start = 0, end = 0;
     char* rsymbol = (char*)symbol;
@@ -228,7 +229,8 @@ void* my_dlsym(x64emu_t* emu, void *handle, void *symbol)
     }
     size_t nlib = (size_t)handle;
     --nlib;
-    if(nlib<0 || nlib>=dl->lib_sz) {
+    // size_t is unsigned
+    if(nlib>=dl->lib_sz) {
         if(!dl->last_error)
             dl->last_error = malloc(129);
         snprintf(dl->last_error, 129, "Bad handle %p)\n", handle);
@@ -295,6 +297,7 @@ void* my_dlsym(x64emu_t* emu, void *handle, void *symbol)
 }
 int my_dlclose(x64emu_t* emu, void *handle)
 {
+    (void)emu;
     if(dlsym_error || box64_log>=LOG_DEBUG) {
             printf_log(LOG_NONE, "Call to dlclose(%p)\n", handle);
     }
@@ -302,7 +305,8 @@ int my_dlclose(x64emu_t* emu, void *handle)
     CLEARERR
     size_t nlib = (size_t)handle;
     --nlib;
-    if(nlib<0 || nlib>=dl->lib_sz) {
+    // size_t is unsigned
+    if(nlib>=dl->lib_sz) {
         if(!dl->last_error)
             dl->last_error = malloc(129);
         snprintf(dl->last_error, 129, "Bad handle %p)\n", handle);
@@ -368,6 +372,7 @@ typedef struct link_map_s {
 
 int my_dlinfo(x64emu_t* emu, void* handle, int request, void* info)
 {
+    (void)emu;
     if(dlsym_error || box64_log>=LOG_DEBUG) {
             printf_log(LOG_NONE, "Call to dlinfo(%p, %d, %p)\n", handle, request, info);
     }
@@ -375,7 +380,8 @@ int my_dlinfo(x64emu_t* emu, void* handle, int request, void* info)
     CLEARERR
     size_t nlib = (size_t)handle;
     --nlib;
-    if(nlib<0 || nlib>=dl->lib_sz) {
+    // size_t is unsigned
+    if(nlib>=dl->lib_sz) {
         if(!dl->last_error)
             dl->last_error = malloc(129);
         snprintf(dl->last_error, 129, "Bad handle %p)\n", handle);
diff --git a/src/wrapped/wrappedlibglu.c b/src/wrapped/wrappedlibglu.c
index be9a6023..afab9a21 100755
--- a/src/wrapped/wrappedlibglu.c
+++ b/src/wrapped/wrappedlibglu.c
@@ -45,6 +45,7 @@ void* getGLUMy(library_t* lib)
 
 void freeGLUMy(void* lib)
 {
+    (void)lib;
     //libglu_my_t *my = (libglu_my_t *)lib;
 }
 #undef SUPER
@@ -136,11 +137,13 @@ static void* findglu_callback5Fct(void* fct)
 #define GLU_TESS_COMBINE_DATA              100111
 void EXPORT my_gluQuadricCallback(x64emu_t* emu, void* a, int32_t b, void* cb)
 {
+    (void)emu;
     libglu_my_t *my = (libglu_my_t*)my_lib->priv.w.p2;
     my->gluQuadricCallback(a, b, findglu_callbackFct(cb));
 }
 void EXPORT my_gluTessCallback(x64emu_t* emu, void* a, int32_t b, void* cb)
 {
+    (void)emu;
     libglu_my_t *my = (libglu_my_t*)my_lib->priv.w.p2;
     if(b==GLU_TESS_COMBINE)
         my->gluTessCallback(a, b, findglu_callback4Fct(cb));
@@ -151,6 +154,7 @@ void EXPORT my_gluTessCallback(x64emu_t* emu, void* a, int32_t b, void* cb)
 }
 void EXPORT my_gluNurbsCallback(x64emu_t* emu, void* a, int32_t b, void* cb)
 {
+    (void)emu;
     libglu_my_t *my = (libglu_my_t*)my_lib->priv.w.p2;
     my->gluNurbsCallback(a, b, findglu_callbackFct(cb));
 }
diff --git a/src/wrapped/wrappedlibpthread.c b/src/wrapped/wrappedlibpthread.c
index d9b81d5b..d29218ed 100755
--- a/src/wrapped/wrappedlibpthread.c
+++ b/src/wrapped/wrappedlibpthread.c
@@ -61,6 +61,7 @@ const char* libpthreadName = "libpthread.so.0";
 
 EXPORT int32_t my_pthread_atfork(x64emu_t *emu, void* prepare, void* parent, void* child)
 {
+    (void)emu;
     // this is partly incorrect, because the emulated functions should be executed by actual fork and not by my_atfork...
     if(my_context->atfork_sz==my_context->atfork_cap) {
         my_context->atfork_cap += 4;
@@ -82,4 +83,3 @@ EXPORT void my___pthread_initialize()
 }
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedlibrt.c b/src/wrapped/wrappedlibrt.c
index a6877c58..29fa375c 100755
--- a/src/wrapped/wrappedlibrt.c
+++ b/src/wrapped/wrappedlibrt.c
@@ -62,6 +62,7 @@ static void* findsigev_notifyFct(void* fct)
 
 EXPORT int my_timer_create(x64emu_t* emu, uint32_t clockid, void* sevp, timer_t* timerid)
 {
+    (void)emu;
     struct sigevent sevent;
     memcpy(&sevent, sevp, sizeof(sevent));
 
diff --git a/src/wrapped/wrappedlibsm.c b/src/wrapped/wrappedlibsm.c
index 75f08e98..06891111 100755
--- a/src/wrapped/wrappedlibsm.c
+++ b/src/wrapped/wrappedlibsm.c
@@ -49,6 +49,7 @@ void* getSMMy(library_t* lib)
 
 void freeSMMy(void* lib)
 {
+    (void)lib;
     //libsm_my_t *my = (libsm_my_t *)lib;
 }
 
@@ -105,6 +106,7 @@ static void my_save_complete(void* smcConn, void* clientData)
 
 EXPORT void* my_SmcOpenConnection(x64emu_t* emu, void* networkIdsList, void* context, int major, int minor, unsigned long mask, my_SmcCallbacks_t* cb, void* previousId, void* clientIdRet, int errorLength, void* errorRet)
 {
+    (void)emu;
     libsm_my_t* my = (libsm_my_t*)GetLibInternal(libsmName)->priv.w.p2;
     my_SmcCallbacks_t nat = {0};
     #define GO(A, B) if(mask&A) {my_##B##_fct = (uintptr_t)cb->B.callback; nat.B.callback = my_##B; nat.B.client_data=cb->B.client_data;}
@@ -152,15 +154,15 @@ static void* findRequestFct(void* fct)
 
 EXPORT int my_SmcInteractRequest(x64emu_t* emu, void* smcConn, int f, void* cb, void* data)
 {
+    (void)emu;
     libsm_my_t* my = (libsm_my_t*)GetLibInternal(libsmName)->priv.w.p2;
-
     return my->SmcInteractRequest(smcConn, f, findRequestFct(cb), data);
 }
 
 EXPORT int my_SmcRequestSaveYourselfPhase2(x64emu_t* emu, void* smcConn, void* cb, void* data)
 {
+    (void)emu;
     libsm_my_t* my = (libsm_my_t*)GetLibInternal(libsmName)->priv.w.p2;
-
     return my->SmcRequestSaveYourselfPhase2(smcConn, findRequestFct(cb), data);
 }
 
@@ -172,4 +174,3 @@ EXPORT int my_SmcRequestSaveYourselfPhase2(x64emu_t* emu, void* smcConn, void* c
     free(lib->priv.w.p2);
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedlibssl.c b/src/wrapped/wrappedlibssl.c
index 8bb38d76..9d3c9b5d 100755
--- a/src/wrapped/wrappedlibssl.c
+++ b/src/wrapped/wrappedlibssl.c
@@ -59,6 +59,7 @@ void* getSllMy(library_t* lib)
 
 void freeSllMy(void* lib)
 {
+    (void)lib;
     //libssl_my_t *my = (libssl_my_t *)lib;
 }
 
@@ -267,57 +268,57 @@ static void* find_proto_select_Fct(void* fct)
 
 EXPORT void my_SSL_CTX_set_default_passwd_cb(x64emu_t* emu, void* ctx, void* cb)
 {
+    (void)emu;
     libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
-
     my->SSL_CTX_set_default_passwd_cb(ctx, find_pem_passwd_cb_Fct(cb));
 }
 
 EXPORT long my_SSL_CTX_callback_ctrl(x64emu_t* emu, void* ctx, int cmd, void* f)
 {
+    (void)emu;
     libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
-
     return my->SSL_CTX_callback_ctrl(ctx, cmd, find_anonymous_Fct(f));
 }
 
 EXPORT long my_SSL_callback_ctrl(x64emu_t* emu, void* ctx, int cmd, void* f)
 {
+    (void)emu;
     libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
-
     return my->SSL_callback_ctrl(ctx, cmd, find_anonymous_Fct(f));
 }
 
 EXPORT void my_SSL_CTX_set_verify(x64emu_t* emu, void* ctx, int mode, void* f)
 {
+    (void)emu;
     libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
-
     my->SSL_CTX_set_verify(ctx, mode, find_verify_Fct(f));
 }
 
 EXPORT void my_SSL_set_verify(x64emu_t* emu, void* ctx, int mode, void* f)
 {
+    (void)emu;
     libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
-
     my->SSL_set_verify(ctx, mode, find_verify_Fct(f));
 }
 
 EXPORT void my_SSL_get_ex_new_index(x64emu_t* emu, long argl, void* argp, void* new_func, void* dup_func, void* free_func)
 {
+    (void)emu;
     libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
-
     my->SSL_get_ex_new_index(argl, argp, find_ex_new_Fct(new_func), find_ex_dup_Fct(dup_func), find_ex_free_Fct(free_func));
 }
 
 EXPORT void my_SSL_set_psk_client_callback(x64emu_t* emu, void* ctx, void* cb)
 {
+    (void)emu;
     libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
-
     my->SSL_set_psk_client_callback(ctx, find_client_cb_Fct(cb));
 }
 
 EXPORT void my_SSL_CTX_set_next_proto_select_cb(x64emu_t* emu, void* ctx, void* cb, void* arg)
 {
+    (void)emu;
     libssl_my_t* my = (libssl_my_t*)my_lib->priv.w.p2;
-
     my->SSL_CTX_set_next_proto_select_cb(ctx, find_proto_select_Fct(cb), arg);
 }
 
diff --git a/src/wrapped/wrappedlibvorbis.c b/src/wrapped/wrappedlibvorbis.c
index ebe7ac68..c433be2b 100755
--- a/src/wrapped/wrappedlibvorbis.c
+++ b/src/wrapped/wrappedlibvorbis.c
@@ -29,12 +29,14 @@ void* getVorbisMy(library_t* lib)
 {
     vorbis_my_t* my = (vorbis_my_t*)calloc(1, sizeof(vorbis_my_t));
     #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A);
+    (void)lib; // So many wrapped functions here too
     #undef GO
     return my;
 }
 
 void freeVorbisMy(void* lib)
 {
+    (void)lib;
     //vorbis_my_t *my = (vorbis_my_t *)lib;
 }
 
@@ -48,4 +50,3 @@ void freeVorbisMy(void* lib)
     lib->context->vorbis = NULL;
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedlibx11.c b/src/wrapped/wrappedlibx11.c
index 1c6ca8f3..e0a8d43f 100755
--- a/src/wrapped/wrappedlibx11.c
+++ b/src/wrapped/wrappedlibx11.c
@@ -155,6 +155,7 @@ void* getX11My(library_t* lib)
 
 void freeX11My(void* lib)
 {
+    (void)lib;
     // x11_my_t *my = (x11_my_t *)lib;
 }
 #undef SUPER
@@ -617,6 +618,7 @@ void BridgeImageFunc(x64emu_t *emu, XImage *img)
 
 void UnbridgeImageFunc(x64emu_t *emu, XImage *img)
 {
+    (void)emu;
     #define GO(A, W) \
     fnc = GetNativeFnc((uintptr_t)img->f.A); \
     if(fnc) \
diff --git a/src/wrapped/wrappedlibxext.c b/src/wrapped/wrappedlibxext.c
index ab73af17..63182f2f 100755
--- a/src/wrapped/wrappedlibxext.c
+++ b/src/wrapped/wrappedlibxext.c
@@ -71,6 +71,7 @@ void* getXextMy(library_t* lib)
 
 void freeXextMy(void* lib)
 {
+    (void)lib;
     //xext_my_t *my = (xext_my_t *)lib;
 }
 
@@ -155,6 +156,7 @@ EXPORT int32_t my_XShmGetImage(x64emu_t* emu, void* disp, void* drawable, void*
 
 EXPORT void* my_XSetExtensionErrorHandler(x64emu_t* emu, void* handler)
 {
+    (void)emu;
     xext_my_t *my = (xext_my_t*)my_lib->priv.w.p2;
     return reverse_exterrorhandleFct(my->XSetExtensionErrorHandler(find_exterrorhandle_Fct(handler)));
 }
@@ -268,4 +270,3 @@ EXPORT int32_t my_XextAddDisplay(x64emu_t* emu, void* extinfo, void* dpy, void*
     my_lib = NULL;
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedlibxt.c b/src/wrapped/wrappedlibxt.c
index 8b74258c..a0802a31 100755
--- a/src/wrapped/wrappedlibxt.c
+++ b/src/wrapped/wrappedlibxt.c
@@ -44,6 +44,7 @@ void* getXtMy(library_t* lib)
 
 void freeXtMy(void* lib)
 {
+    (void)lib;
     //libxt_my_t *my = (libxt_my_t *)lib;
 }
 
@@ -82,6 +83,7 @@ static void* findEventFct(void* fct)
 
 EXPORT void my_XtAddEventHandler(x64emu_t* emu, void* w, uint32_t mask, int32_t maskable, void* cb, void* data)
 {
+    (void)emu;
     void* fct = findEventFct(cb);
     library_t* lib = GetLibInternal(libxtName);
     libxt_my_t* my = (libxt_my_t*)lib->priv.w.p2;
@@ -101,4 +103,3 @@ EXPORT void my_XtAddEventHandler(x64emu_t* emu, void* w, uint32_t mask, int32_t
     free(lib->priv.w.p2);
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedlibxtst.c b/src/wrapped/wrappedlibxtst.c
index 4fae5d30..3c1ed488 100755
--- a/src/wrapped/wrappedlibxtst.c
+++ b/src/wrapped/wrappedlibxtst.c
@@ -45,6 +45,7 @@ void* getXtstMy(library_t* lib)
 
 void freeXtstMy(void* lib)
 {
+    (void)lib;
     //libxtst_my_t *my = (libxtst_my_t *)lib;
 }
 
@@ -80,6 +81,7 @@ static void* find_XRecordInterceptProc_Fct(void* fct)
 
 EXPORT int my_XRecordEnableContextAsync(x64emu_t* emu, void* display, void* context, void* cb, void* closure)
 {
+    (void)emu;
     library_t* lib = GetLibInternal(libxtstName);
     libxtst_my_t* my = (libxtst_my_t*)lib->priv.w.p2;
     return my->XRecordEnableContextAsync(display, context, find_XRecordInterceptProc_Fct(cb), closure);
@@ -87,6 +89,7 @@ EXPORT int my_XRecordEnableContextAsync(x64emu_t* emu, void* display, void* cont
 
 EXPORT int my_XRecordEnableContext(x64emu_t* emu, void* display, void* context, void* cb, void* closure)
 {
+    (void)emu;
     library_t* lib = GetLibInternal(libxtstName);
     libxtst_my_t* my = (libxtst_my_t*)lib->priv.w.p2;
     return my->XRecordEnableContext(display, context, find_XRecordInterceptProc_Fct(cb), closure);
@@ -104,4 +107,3 @@ EXPORT int my_XRecordEnableContext(x64emu_t* emu, void* display, void* context,
     free(lib->priv.w.p2);
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedlibz.c b/src/wrapped/wrappedlibz.c
index 9a1cd6f3..81756501 100755
--- a/src/wrapped/wrappedlibz.c
+++ b/src/wrapped/wrappedlibz.c
@@ -40,6 +40,7 @@ void* getZMy(library_t* lib)
 
 void freeZMy(void* lib)
 {
+    (void)lib;
     //libz_my_t *my = (libz_my_t *)lib;
 }
 
@@ -115,6 +116,7 @@ typedef struct z_stream_s {
 
 static void wrapper_stream_z(x64emu_t* emu, void* str)
 {
+    (void)emu;
     z_stream *stream = (z_stream*)str;
     stream->zalloc = find_alloc_Fct(stream->zalloc);
     stream->zfree = find_free_Fct(stream->zfree);
diff --git a/src/wrapped/wrappedlzma.c b/src/wrapped/wrappedlzma.c
index 8bfb5707..72be8f66 100755
--- a/src/wrapped/wrappedlzma.c
+++ b/src/wrapped/wrappedlzma.c
@@ -36,6 +36,7 @@ void* getLzmaMy(library_t* lib)
 {
     lzma_my_t* my = (lzma_my_t*)calloc(1, sizeof(lzma_my_t));
     #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A);
+    (void)lib; // So many wrapped functions here
     SUPER()
     #undef GO
     return my;
@@ -44,6 +45,7 @@ void* getLzmaMy(library_t* lib)
 
 void freeLzmaMy(void* lib)
 {
+    (void)lib;
     //lzma_my_t *my = (lzma_my_t *)lib;
 }
 
@@ -57,4 +59,3 @@ void freeLzmaMy(void* lib)
     my_lib = NULL;
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedopenal.c b/src/wrapped/wrappedopenal.c
index 27b1af20..6aa73f2f 100755
--- a/src/wrapped/wrappedopenal.c
+++ b/src/wrapped/wrappedopenal.c
@@ -46,6 +46,7 @@ void* getOpenALMy(library_t* lib)
 
 void freeOpenALMy(void* lib)
 {
+    (void)lib;
     //openal_my_t *my = (openal_my_t *)lib;
 }
 #define SUPER() \
@@ -214,13 +215,14 @@ EXPORT void* my_alcGetProcAddress(x64emu_t* emu, void* device, void* name)
 
 EXPORT void my_alRequestFoldbackStart(x64emu_t *emu, int32_t mode, int32_t count, int32_t length, void* mem, void* cb)
 {
+    (void)emu;
     openal_my_t* my = (openal_my_t*)GetLibInternal(libname)->priv.w.p2;
     my->alRequestFoldbackStart(mode, count, length, mem, find_Request_Fct(cb));
 }
 
 EXPORT void my_alRequestFoldbackStop(x64emu_t* emu)
 {
+    (void)emu;
     openal_my_t* my = (openal_my_t*)GetLibInternal(libname)->priv.w.p2;
     my->alRequestFoldbackStop();
 }
-
diff --git a/src/wrapped/wrappedpango.c b/src/wrapped/wrappedpango.c
index c966d366..0e6569c9 100755
--- a/src/wrapped/wrappedpango.c
+++ b/src/wrapped/wrappedpango.c
@@ -45,6 +45,7 @@ void* getPangoMy(library_t* lib)
 
 void freePangoMy(void* lib)
 {
+    (void)lib;
     //pango_my_t *my = (pango_my_t *)lib;
 }
 
@@ -112,8 +113,8 @@ static void* find_PangoAttrClass_Fct(my_PangoAttrClass_t* klass)
 
 EXPORT void my_pango_attribute_init(x64emu_t* emu, void* attr, my_PangoAttrClass_t* klass)
 {
+    (void)emu;
     pango_my_t* my = (pango_my_t*)my_lib->priv.w.p2;
-
     my->pango_attribute_init(attr, find_PangoAttrClass_Fct(klass));
 }
 
diff --git a/src/wrapped/wrappedpulse.c b/src/wrapped/wrappedpulse.c
index 81fb38c7..f0c9a14a 100755
--- a/src/wrapped/wrappedpulse.c
+++ b/src/wrapped/wrappedpulse.c
@@ -159,8 +159,8 @@ void* getPulseMy(library_t* lib)
 
 void freePulseMy(void* lib)
 {
+    (void)lib;
     //pulse_my_t *my = (pulse_my_t *)lib;
-
 }
 
 // TODO: change that static for a map ptr2ptr?
@@ -1508,4 +1508,3 @@ EXPORT void my_pa_log_level_meta(x64emu_t* emu, int level, void* file, int line,
     free(lib->priv.w.p2);
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedsdl1.c b/src/wrapped/wrappedsdl1.c
index 8c1070ff..34d41708 100755
--- a/src/wrapped/wrappedsdl1.c
+++ b/src/wrapped/wrappedsdl1.c
@@ -80,6 +80,7 @@ void* getSDL1My(library_t* lib)
 
 void freeSDL1My(void* lib)
 {
+    (void)lib;
     //sdl1_my_t *my = (sdl1_my_t *)lib;
 }
 
diff --git a/src/wrapped/wrappedsdl1mixer.c b/src/wrapped/wrappedsdl1mixer.c
index b7933ecb..760f0f05 100755
--- a/src/wrapped/wrappedsdl1mixer.c
+++ b/src/wrapped/wrappedsdl1mixer.c
@@ -182,6 +182,7 @@ static void* find_MusicFinished_Fct(void* fct)
 
 static void freeSDL1MixerMy(library_t* lib)
 {
+    (void)lib;
     //sdl1mixer_my_t *my = lib->priv.w.p2;
 }
 
@@ -261,4 +262,3 @@ const char* sdl1mixerName = "libSDL_mixer-1.2.so.0";
     ((box64context_t*)(lib->context))->sdl1mixerlib = NULL;
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedsdl2.c b/src/wrapped/wrappedsdl2.c
index 0c021103..5771d27c 100755
--- a/src/wrapped/wrappedsdl2.c
+++ b/src/wrapped/wrappedsdl2.c
@@ -99,7 +99,8 @@ void* getSDL2My(library_t* lib)
 
 void freeSDL2My(void* lib)
 {
-    /*sdl2_my_t *my = (sdl2_my_t *)lib;*/
+    (void)lib;
+    //sdl2_my_t *my = (sdl2_my_t *)lib;
 }
 #undef SUPER
 
@@ -550,6 +551,7 @@ EXPORT void my2_SDL_LogSetOutputFunction(x64emu_t* emu, void* f, void* arg)
 
 EXPORT int my2_SDL_vsnprintf(x64emu_t* emu, void* buff, size_t s, void * fmt, x64_va_list_t b)
 {
+    (void)emu;
     CONVERT_VALIST(b)
     int r = vsnprintf(buff, s, fmt, VARARGS);
     return r;
@@ -840,13 +842,14 @@ EXPORT int64_t my2_SDL_IsJoystickHIDAPI(x64emu_t* emu, uint64_t a, uint64_t b)
 void* my_vkGetInstanceProcAddr(x64emu_t* emu, void* device, void* name);
 EXPORT void* my2_SDL_Vulkan_GetVkGetInstanceProcAddr(x64emu_t* emu)
 {
-//    sdl2_my_t *my = (sdl2_my_t *)emu->context->sdl2lib->priv.w.p2;
+    (void)emu;
+    //sdl2_my_t *my = (sdl2_my_t *)emu->context->sdl2lib->priv.w.p2;
     
-//    if(!emu->context->vkprocaddress)
-//        emu->context->vkprocaddress = (vkprocaddess_t)my->SDL_Vulkan_GetVkGetInstanceProcAddr();
+    //if(!emu->context->vkprocaddress)
+    //    emu->context->vkprocaddress = (vkprocaddess_t)my->SDL_Vulkan_GetVkGetInstanceProcAddr();
 
-//    if(emu->context->vkprocaddress)
-//        return (void*)AddCheckBridge(my_context->sdl2lib->priv.w.bridge, pFEpp, my_vkGetInstanceProcAddr, 0);
+    //if(emu->context->vkprocaddress)
+    //    return (void*)AddCheckBridge(my_context->sdl2lib->priv.w.bridge, pFEpp, my_vkGetInstanceProcAddr, 0);
     return NULL;
 }
 
diff --git a/src/wrapped/wrappedsdl2mixer.c b/src/wrapped/wrappedsdl2mixer.c
index e8901c5f..df4fc67f 100755
--- a/src/wrapped/wrappedsdl2mixer.c
+++ b/src/wrapped/wrappedsdl2mixer.c
@@ -57,7 +57,8 @@ static void* getSDL2MixerMy(library_t* lib)
 
 static void freeSDL2MixerMy(library_t* lib)
 {
-//    sdl2mixer_my_t *my = lib->priv.w.p2;
+    (void)lib;
+    //sdl2mixer_my_t *my = lib->priv.w.p2;
 }
 
 #undef SUPER
@@ -281,4 +282,3 @@ const char* sdl2mixerName = "libSDL2_mixer-2.0.so.0";
     ((box64context_t*)(lib->context))->sdl2mixerlib = NULL;
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedsdl2net.c b/src/wrapped/wrappedsdl2net.c
index dcb3f7a8..ead8d048 100755
--- a/src/wrapped/wrappedsdl2net.c
+++ b/src/wrapped/wrappedsdl2net.c
@@ -23,6 +23,7 @@ static void* getSDL2NetMy(library_t* lib)
 {
     sdl2net_my_t* my = (sdl2net_my_t*)calloc(1, sizeof(sdl2net_my_t));
     #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A);
+    (void)lib; // So many wrapped functions here
     #undef GO
     return my;
 }
@@ -43,4 +44,3 @@ const char* sdl2netName = "libSDL2_net-2.0.so.0";
     my_lib = NULL;
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedsmpeg.c b/src/wrapped/wrappedsmpeg.c
index 47700059..0df09581 100755
--- a/src/wrapped/wrappedsmpeg.c
+++ b/src/wrapped/wrappedsmpeg.c
@@ -44,6 +44,7 @@ static void* getSMPEGMy(library_t* lib)
 
 static void freeSMPEGMy(void* lib)
 {
+    (void)lib;
     //smpeg_my_t *my = (smpeg_my_t *)lib;
 }
 
@@ -80,6 +81,7 @@ static void* find_dispcallback_Fct(void* fct)
 
 EXPORT void my_SMPEG_setdisplay(x64emu_t* emu, void* mpeg, void* surf, void* lock, void* cb)
 {
+    (void)emu;
     library_t* lib = GetLibInternal(smpegName);
     smpeg_my_t* my = (smpeg_my_t*)lib->priv.w.p2;
     my->SMPEG_setdisplay(mpeg, surf, lock, find_dispcallback_Fct(cb));
@@ -103,4 +105,3 @@ EXPORT void* my_SMPEG_new_rwops(x64emu_t* emu, void* src, void* info, int32_t sd
     free(lib->priv.w.p2); \
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedsmpeg2.c b/src/wrapped/wrappedsmpeg2.c
index eac26700..05be193e 100755
--- a/src/wrapped/wrappedsmpeg2.c
+++ b/src/wrapped/wrappedsmpeg2.c
@@ -45,6 +45,7 @@ static void* getSMPEG2My(library_t* lib)
 
 static void freeSMPEG2My(void* lib)
 {
+    (void)lib;
     //smpeg2_my_t *my = (smpeg2_my_t *)lib;
 }
 
@@ -82,6 +83,7 @@ static void* find_dispcallback_Fct(void* fct)
 
 EXPORT void my2_SMPEG_setdisplay(x64emu_t* emu, void* mpeg, void* cb, void* data, void* lock)
 {
+    (void)emu;
     library_t* lib = GetLibInternal(smpeg2Name);
     smpeg2_my_t* my = (smpeg2_my_t*)lib->priv.w.p2;
     my->SMPEG_setdisplay(mpeg, find_dispcallback_Fct(cb), data, lock);
@@ -108,4 +110,3 @@ EXPORT void* my2_SMPEG_new_rwops(x64emu_t* emu, void* src, void* info, int32_t f
     free(lib->priv.w.p2); \
 
 #include "wrappedlib_init.h"
-
diff --git a/src/wrapped/wrappedvorbisfile.c b/src/wrapped/wrappedvorbisfile.c
index b342523e..aa276de3 100755
--- a/src/wrapped/wrappedvorbisfile.c
+++ b/src/wrapped/wrappedvorbisfile.c
@@ -48,6 +48,7 @@ void* getVorbisfileMy(library_t* lib)
 
 void freeVorbisfileMy(void* lib)
 {
+    (void)lib;
     //vorbisfile_my_t *my = (vorbisfile_my_t *)lib;
 }