Build of convertlit with clang_glibc toolchain

The build took 00h 01m 11s and was SUCCESSFUL.

The program in this build is written in the following languages, according to sloccount:

SLOCLanguage
8,141 ansic
13 makefile
8,154 total

The process tree of the build process is here.

Several sub-process invocations were improper; see the process tree for details. Summary:

Log

To avoid scrolling, you may jump to the last line of the invocation of makepkg that was used to build this package.

Removed vanilla repositories from pacman.conf and added:
# [tuscan]
# Server = file:///var/cache/pacman/pkg/

CMD: pacman -Syy --noconfirm
# :: Synchronizing package databases...
# downloading tuscan.db...

Copied permanent toolchain into container-local sysroot
# /toolchain_root/sysroot --> /sysroot/sysroot
# /toolchain_root/lib --> /sysroot/lib
# /toolchain_root/sbin --> /sysroot/sbin
# /toolchain_root/lib64 --> /sysroot/lib64
# /toolchain_root/etc --> /sysroot/etc
# /toolchain_root/share --> /sysroot/share
# /toolchain_root/bin --> /sysroot/bin
# /toolchain_root/var --> /sysroot/var
# /toolchain_root/usr --> /sysroot/usr
# /toolchain_root/glibc-build --> /sysroot/glibc-build
# /toolchain_root/x86_64-pc-linux-gnu --> /sysroot/x86_64-pc-linux-gnu
# /toolchain_root/include --> /sysroot/include
# /toolchain_root/libexec --> /sysroot/libexec

CMD: sudo -u tuscan PATH=/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin CC=clang CXX=clang++ red makepkg --noextract --syncdeps --skipinteg --skippgpcheck --skipchecksums --noconfirm --nocolor --log --noprogressbar --nocheck
# ==> Making package: convertlit 1.8-7 (Thu Apr 13 17:02:55 UTC 2017)
# ==> Checking runtime dependencies...
# ==> Checking buildtime dependencies...
# ==> Installing missing dependencies...
# resolving dependencies...
# looking for conflicting packages...
#
# Packages (1) libtommath-1.0-1
#
# Total Installed Size: 0.37 MiB
#
# :: Proceed with installation? [Y/n]
# checking keyring...
# checking package integrity...
# loading package files...
# checking for file conflicts...
# checking available disk space...
# :: Processing package changes...
# installing libtommath...
# ==> WARNING: Using existing $srcdir/ tree
# ==> Starting build()...
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o litatom.o litatom.c
# litatom.c:123:19: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# strncpy(s,p + 1, len);
# ^~~~~
# /usr/include/bits/string2.h:760:58: note: expanded from macro 'strncpy'
# # define strncpy(dest, src, n) __builtin_strncpy (dest, src, n)
# ^~~
# litatom.c:186:19: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# strncpy(s,p, len);
# ^
# /usr/include/bits/string2.h:760:58: note: expanded from macro 'strncpy'
# # define strncpy(dest, src, n) __builtin_strncpy (dest, src, n)
# ^~~
# 2 warnings generated.
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o litdrm.o litdrm.c
# litdrm.c:135:33: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(msreader_string,ptr,strlen(msreader_string)) != 0) {
# ^~~
# /usr/include/bits/string2.h:901:17: note: expanded from macro 'strncmp'
# && strlen (s2) < ((size_t) (n)))) \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litdrm.c:135:33: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(msreader_string,ptr,strlen(msreader_string)) != 0) {
# ^~~
# /usr/include/bits/string2.h:902:19: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:803:54: note: expanded from macro 'strcmp'
# && (__s1_len = strlen (s1), __s2_len = strlen (s2), \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litdrm.c:135:33: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(msreader_string,ptr,strlen(msreader_string)) != 0) {
# ^~~
# /usr/include/bits/string2.h:902:19: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:806:31: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# litdrm.c:135:33: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(msreader_string,ptr,strlen(msreader_string)) != 0) {
# ^~~
# /usr/include/bits/string2.h:902:19: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:810:30: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# litdrm.c:135:33: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(msreader_string,ptr,strlen(msreader_string)) != 0) {
# ^~~
# /usr/include/bits/string2.h:902:19: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:813:29: note: expanded from macro 'strcmp'
# && (__s2_len = strlen (s2), __s2_len < 4) \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litdrm.c:135:33: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(msreader_string,ptr,strlen(msreader_string)) != 0) {
# ^~~
# /usr/include/bits/string2.h:902:19: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:815:33: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# litdrm.c:135:33: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(msreader_string,ptr,strlen(msreader_string)) != 0) {
# ^~~
# /usr/include/bits/string2.h:902:19: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:817:30: note: expanded from macro 'strcmp'
# : __builtin_strcmp (s1, s2)))); })
# ^~
# litdrm.c:135:33: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(msreader_string,ptr,strlen(msreader_string)) != 0) {
# ^~~
# /usr/include/bits/string2.h:902:38: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/string.h:143:51: note: passing argument to parameter '__s2' here
# extern int strncmp (const char *__s1, const char *__s2, size_t __n)
# ^
# litdrm.c:250:52: warning: passing 'U8 [129]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# status = lit_i_encrypt_section(litfile,litfile->sections[i].name,
# ^~~~~~~~~~~~~~~~~~~~~~~~~
# ./litinternal.h:52:44: note: passing argument to parameter here
# int lit_i_encrypt_section(lit_file *,char *, U8 * new_key);
# ^
# 9 warnings generated.
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o litlib.o litlib.c
# litlib.c:189:47: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# status = lit_get_file(litfile,&entry->name,&ptr,&nbytes);
# ^~~~~~~~~~~~
# ./litlib.h:232:51: note: passing argument to parameter 'name' here
# int lit_get_file(lit_file * litfile, const char * name, U8 ** ptr, int * psize);
# ^
# litlib.c:235:29: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# match = strncasecmp(&entry->name, name, entry->namelen);
# ^~~~~~~~~~~~
# /usr/include/string.h:533:37: note: passing argument to parameter '__s1' here
# extern int strncasecmp (const char *__s1, const char *__s2, size_t __n)
# ^
# litlib.c:361:29: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# match = strncasecmp(&entry->name,prefix, strlen(prefix));
# ^~~~~~~~~~~~
# /usr/include/string.h:533:37: note: passing argument to parameter '__s1' here
# extern int strncasecmp (const char *__s1, const char *__s2, size_t __n)
# ^
# litlib.c:400:29: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# match = strncasecmp(&entry->name, name, entry->namelen);
# ^~~~~~~~~~~~
# /usr/include/string.h:533:37: note: passing argument to parameter '__s1' here
# extern int strncasecmp (const char *__s1, const char *__s2, size_t __n)
# ^
# litlib.c:429:16: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# strcpy(&new->name, name);
# ^~~~~~~~~~
# /usr/include/string.h:125:39: note: passing argument to parameter '__dest' here
# extern char *strcpy (char *__restrict __dest, const char *__restrict __src)
# ^
# 5 warnings generated.
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o litembiggen.o litembiggen.c
# litembiggen.c:286:21: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('\n');
# ^~~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:290:25: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR(' ');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:304:17: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('<');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:340:30: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_STRING(tag_name);
# ^~~~~~~~
# litembiggen.c:69:35: note: expanded from macro 'WRITE_STRING'
# status = htmlwrite(write_data,s,strlen(s));\
# ^
# litembiggen.c:360:21: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR(' ');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:361:21: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('/');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:362:21: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('>');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:366:21: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('>');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:420:25: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('\n');
# ^~~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:423:29: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR(' ');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:426:21: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('<');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:427:21: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('/');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:428:34: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_STRING(tag_name);
# ^~~~~~~~
# litembiggen.c:69:35: note: expanded from macro 'WRITE_STRING'
# status = htmlwrite(write_data,s,strlen(s));\
# ^
# litembiggen.c:429:21: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('>');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:478:21: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR(' ');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:479:34: warning: passing 'char [20]' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_STRING(numbuf);
# ^~~~~~
# litembiggen.c:69:35: note: expanded from macro 'WRITE_STRING'
# status = htmlwrite(write_data,s,strlen(s));\
# ^
# litembiggen.c:488:21: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR(' ');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:489:34: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_STRING((char *)tmp_map->name);
# ^~~~~~~~~~~~~~~~~~~~~
# litembiggen.c:69:35: note: expanded from macro 'WRITE_STRING'
# status = htmlwrite(write_data,s,strlen(s));\
# ^
# litembiggen.c:493:17: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('=');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:508:17: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('\"');
# ^~~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:513:21: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('\"');
# ^~~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:532:34: warning: passing 'char [20]' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_STRING(numbuf);
# ^~~~~~
# litembiggen.c:69:35: note: expanded from macro 'WRITE_STRING'
# status = htmlwrite(write_data,s,strlen(s));\
# ^
# litembiggen.c:547:21: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('\"');
# ^~~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:575:30: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_STRING(tag_name);
# ^~~~~~~~
# litembiggen.c:69:35: note: expanded from macro 'WRITE_STRING'
# status = htmlwrite(write_data,s,strlen(s));\
# ^
# litembiggen.c:587:13: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR(' ');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:595:17: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('=');
# ^~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:622:35: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# hash_ptr = strchr(href_value,'#');
# ^~~~~~~~~~
# /usr/include/bits/string2.h:399:25: note: expanded from macro 'strchr'
# : __builtin_strchr (s, c)))
# ^
# litembiggen.c:622:26: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# hash_ptr = strchr(href_value,'#');
# ^ ~~~~~~~~~~~~~~~~~~~~~~
# litembiggen.c:624:30: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# new_href = lit_lookup_mapping(pManifest, href_value,
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# litembiggen.c:627:30: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# new_href = lit_lookup_mapping(pManifest, href_value,
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# litembiggen.c:629:17: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('\"');
# ^~~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:631:34: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_STRING(new_href);
# ^~~~~~~~
# litembiggen.c:69:44: note: expanded from macro 'WRITE_STRING'
# status = htmlwrite(write_data,s,strlen(s));\
# ^
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litembiggen.c:633:38: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_STRING(hash_ptr);
# ^~~~~~~~
# litembiggen.c:69:44: note: expanded from macro 'WRITE_STRING'
# status = htmlwrite(write_data,s,strlen(s));\
# ^
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litembiggen.c:637:34: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_STRING(href_value);
# ^~~~~~~~~~
# litembiggen.c:69:44: note: expanded from macro 'WRITE_STRING'
# status = htmlwrite(write_data,s,strlen(s));\
# ^
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litembiggen.c:639:17: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# WRITE_CHAR('\"');
# ^~~~~~~~~~~~~~~~
# litembiggen.c:64:35: note: expanded from macro 'WRITE_CHAR'
# status = htmlwrite(write_data,&ch,1);\
# ^~~
# litembiggen.c:690:39: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# status = htmlwrite(write_data,&ch, 1);
# ^~~
# litembiggen.c:694:39: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# status = htmlwrite(write_data,entities[found].name,
# ^~~~~~~~~~~~~~~~~~~~
# litembiggen.c:699:39: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# status = htmlwrite(write_data,&ch, 1);
# ^~~
# litembiggen.c:712:37: warning: passing 'char [14]' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# return htmlwrite(write_data,ent_buffer,len);
# ^~~~~~~~~~
# 39 warnings generated.
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o littags.o littags.c
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o litmetatags.o litmetatags.c
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o litmanifest.o litmanifest.c
# litmanifest.c:242:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^
# /usr/include/bits/string2.h:899:21: note: expanded from macro 'strncmp'
# && strlen (s1) < ((size_t) (n))) \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litmanifest.c:242:28: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^~~~~~~~~~~~~~
# /usr/include/bits/string2.h:901:17: note: expanded from macro 'strncmp'
# && strlen (s2) < ((size_t) (n)))) \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litmanifest.c:242:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:803:30: note: expanded from macro 'strcmp'
# && (__s1_len = strlen (s1), __s2_len = strlen (s2), \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litmanifest.c:242:28: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^~~~~~~~~~~~~~
# /usr/include/bits/string2.h:902:19: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:803:54: note: expanded from macro 'strcmp'
# && (__s1_len = strlen (s1), __s2_len = strlen (s2), \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litmanifest.c:242:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:806:27: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# litmanifest.c:242:28: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^~~~~~~~~~~~~~
# /usr/include/bits/string2.h:902:19: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:806:31: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# litmanifest.c:242:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:808:26: note: expanded from macro 'strcmp'
# && (__s1_len = strlen (s1), __s1_len < 4) \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litmanifest.c:242:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:810:26: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# litmanifest.c:242:28: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^~~~~~~~~~~~~~
# /usr/include/bits/string2.h:902:19: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:810:30: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# litmanifest.c:242:28: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^~~~~~~~~~~~~~
# /usr/include/bits/string2.h:902:19: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:813:29: note: expanded from macro 'strcmp'
# && (__s2_len = strlen (s2), __s2_len < 4) \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litmanifest.c:242:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:815:29: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# litmanifest.c:242:28: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^~~~~~~~~~~~~~
# /usr/include/bits/string2.h:902:19: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:815:33: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# litmanifest.c:242:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:817:26: note: expanded from macro 'strcmp'
# : __builtin_strcmp (s1, s2)))); })
# ^~
# litmanifest.c:242:28: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^~~~~~~~~~~~~~
# /usr/include/bits/string2.h:902:19: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:817:30: note: expanded from macro 'strcmp'
# : __builtin_strcmp (s1, s2)))); })
# ^~
# litmanifest.c:242:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^
# /usr/include/bits/string2.h:902:34: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
# extern int strncmp (const char *__s1, const char *__s2, size_t __n)
# ^
# litmanifest.c:242:28: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(s, map->sInternal, size) == 0)
# ^~~~~~~~~~~~~~
# /usr/include/bits/string2.h:902:38: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/string.h:143:51: note: passing argument to parameter '__s2' here
# extern int strncmp (const char *__s1, const char *__s2, size_t __n)
# ^
# litmanifest.c:243:24: warning: returning 'U8 *' (aka 'unsigned char *') from a function with result type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# return map->sOriginal;
# ^~~~~~~~~~~~~~
# 17 warnings generated.
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o litdirectory.o litdirectory.c
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o litsections.o litsections.c
# litsections.c:189:50: warning: passing 'U8 [129]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# status = decompress_section(litfile, pSection->name,
# ^~~~~~~~~~~~~~
# litsections.c:36:58: note: passing argument to parameter 'section_name' here
# static int decompress_section(lit_file * litfile, char * section_name,
# ^
# litsections.c:156:9: warning: variable 'pControl' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
# if (status) goto bad;
# ^~~~~~
# litsections.c:218:9: note: uninitialized use occurs here
# if (pControl) free(pControl);
# ^~~~~~~~
# litsections.c:156:5: note: remove the 'if' if its condition is always false
# if (status) goto bad;
# ^~~~~~~~~~~~~~~~~~~~
# litsections.c:148:9: warning: variable 'pControl' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
# if (status) goto bad;
# ^~~~~~
# litsections.c:218:9: note: uninitialized use occurs here
# if (pControl) free(pControl);
# ^~~~~~~~
# litsections.c:148:5: note: remove the 'if' if its condition is always false
# if (status) goto bad;
# ^~~~~~~~~~~~~~~~~~~~
# litsections.c:141:27: note: initialize the variable 'pControl' to silence this warning
# U8 * pControl;
# ^
# = NULL
# litsections.c:332:14: warning: implicit declaration of function 'LZXinit' is invalid in C99 [-Wimplicit-function-declaration]
# status = LZXinit(window_size);
# ^
# litsections.c:402:17: warning: implicit declaration of function 'LZXreset' is invalid in C99 [-Wimplicit-function-declaration]
# LZXreset();
# ^
# litsections.c:403:26: warning: implicit declaration of function 'LZXdecompress' is invalid in C99 [-Wimplicit-function-declaration]
# status = LZXdecompress(pContent + base, ptr+dst,
# ^
# 6 warnings generated.
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o litheaders.o litheaders.c
# litheaders.c:219:17: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(header, lit_magic_string, strlen(lit_magic_string)) != 0) {
# ^~~~~~
# /usr/include/bits/string2.h:899:21: note: expanded from macro 'strncmp'
# && strlen (s1) < ((size_t) (n))) \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litheaders.c:219:17: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(header, lit_magic_string, strlen(lit_magic_string)) != 0) {
# ^~~~~~
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:803:30: note: expanded from macro 'strcmp'
# && (__s1_len = strlen (s1), __s2_len = strlen (s2), \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litheaders.c:219:17: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(header, lit_magic_string, strlen(lit_magic_string)) != 0) {
# ^~~~~~
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:806:27: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# litheaders.c:219:17: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(header, lit_magic_string, strlen(lit_magic_string)) != 0) {
# ^~~~~~
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:808:26: note: expanded from macro 'strcmp'
# && (__s1_len = strlen (s1), __s1_len < 4) \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# litheaders.c:219:17: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(header, lit_magic_string, strlen(lit_magic_string)) != 0) {
# ^~~~~~
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:810:26: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# litheaders.c:219:17: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(header, lit_magic_string, strlen(lit_magic_string)) != 0) {
# ^~~~~~
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:815:29: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# litheaders.c:219:17: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(header, lit_magic_string, strlen(lit_magic_string)) != 0) {
# ^~~~~~
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:817:26: note: expanded from macro 'strcmp'
# : __builtin_strcmp (s1, s2)))); })
# ^~
# litheaders.c:219:17: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(header, lit_magic_string, strlen(lit_magic_string)) != 0) {
# ^~~~~~
# /usr/include/bits/string2.h:902:34: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
# extern int strncmp (const char *__s1, const char *__s2, size_t __n)
# ^
# 8 warnings generated.
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o litutil.o litutil.c
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o sha/mssha1.o sha/mssha1.c
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o des/des.o des/des.c
# des/des.c:65:7: warning: promoted type 'int' of K&R function parameter is not compatible with the parameter type 'short' declared in a previous prototype [-Wknr-promoted-parameter]
# short edf;
# ^
# des/d3des.h:39:42: note: previous declaration is here
# extern void deskey(unsigned char *, short);
# ^
# 1 warning generated.
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o newlzx/lzxglue.o newlzx/lzxglue.c
# newlzx/lzxglue.c:61:5: warning: implicitly declaring library function 'memcpy' with type 'void *(void *, const void *, unsigned long)' [-Wimplicit-function-declaration]
# memcpy(dest, src, bytes);
# ^
# newlzx/lzxglue.c:61:5: note: include the header or explicitly provide a declaration for 'memcpy'
# 1 warning generated.
# clang -O3 -Wall -Ides -Isha -Inewlzx -I. -c -o newlzx/lzxd.o newlzx/lzxd.c
# rm -f openclit.a
# ar rv openclit.a litatom.o litdrm.o litlib.o litembiggen.o littags.o litmetatags.o litmanifest.o litdirectory.o litsections.o litheaders.o litutil.o sha/mssha1.o des/des.o newlzx/lzxglue.o newlzx/lzxd.o
# ar: creating openclit.a
# a - litatom.o
# a - litdrm.o
# a - litlib.o
# a - litembiggen.o
# a - littags.o
# a - litmetatags.o
# a - litmanifest.o
# a - litdirectory.o
# a - litsections.o
# a - litheaders.o
# a - litutil.o
# a - sha/mssha1.o
# a - des/des.o
# a - newlzx/lzxglue.o
# a - newlzx/lzxd.o
# clang -funsigned-char -Wall -O2 -I /usr/lib/ -I ../lib -I ../lib/des -I . -c -o clit.o clit.c
# clit.c:128:12: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
# printf(sTitle);
# ^~~~~~
# clit.c:130:16: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
# printf(sUsage);
# ^~~~~~
# clit.c:244:60: warning: format specifies type 'int' but the argument has type 'unsigned long' [-Wformat]
# fprintf(stderr,"Malloc(%d) failed!\n", strlen(output) + 1);
# ~~ ^~~~~~~~~~~~~~~~~~
# %lu
# clit.c:122:5: warning: array index 4096 is past the end of the array (which contains 4096 elements) [-Warray-bounds]
# dir_program[MAX_PATH] = '\0';
# ^ ~~~~~~~~
# clit.c:67:1: note: array 'dir_program' declared here
# char dir_program[MAX_PATH];
# ^
# 4 warnings generated.
# clang -funsigned-char -Wall -O2 -I /usr/lib/ -I ../lib -I ../lib/des -I . -c -o hexdump.o hexdump.c
# hexdump.c:37:3: warning: implicitly declaring library function 'memset' with type 'void *(void *, int, unsigned long)' [-Wimplicit-function-declaration]
# memset( strbuffer, ' ', numBytesInString );
# ^
# hexdump.c:37:3: note: include the header or explicitly provide a declaration for 'memset'
# 1 warning generated.
# clang -funsigned-char -Wall -O2 -I /usr/lib/ -I ../lib -I ../lib/des -I . -c -o drm5.o drm5.c
# drm5.c:116:19: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge(dir_program, sKeysFile, NULL);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# drm5.c:117:48: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (s) pFile = read_whole_file(s, &remaining);
# ^
# drm5.c:44:29: note: passing argument to parameter 'filename' here
# U8 * read_whole_file(char * filename, int * size_ptr)
# ^
# drm5.c:122:19: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge(dir_lit_file, sKeysFile, NULL);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# drm5.c:123:48: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (s) pFile = read_whole_file(s, &remaining);
# ^
# drm5.c:44:29: note: passing argument to parameter 'filename' here
# U8 * read_whole_file(char * filename, int * size_ptr)
# ^
# drm5.c:144:49: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# strcpy(private_key_ptr, pKey);
# ^~~~
# /usr/include/string.h:125:70: note: passing argument to parameter '__src' here
# extern char *strcpy (char *__restrict __dest, const char *__restrict __src)
# ^
# drm5.c:145:45: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# strcpy(modulus_ptr, pModulus);
# ^~~~~~~~
# /usr/include/string.h:125:70: note: passing argument to parameter '__src' here
# extern char *strcpy (char *__restrict __dest, const char *__restrict __src)
# ^
# drm5.c:168:33: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# strcpy(modulus_ptr, pModulus);
# ^~~~~~~~
# /usr/include/string.h:125:70: note: passing argument to parameter '__src' here
# extern char *strcpy (char *__restrict __dest, const char *__restrict __src)
# ^
# drm5.c:169:37: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# strcpy(private_key_ptr, pKey);
# ^~~~
# /usr/include/string.h:125:70: note: passing argument to parameter '__src' here
# extern char *strcpy (char *__restrict __dest, const char *__restrict __src)
# ^
# drm5.c:185:9: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# ocp = buff;
# ^ ~~~~
# drm5.c:267:14: warning: implicit declaration of function 'isalnum' is invalid in C99 [-Wimplicit-function-declaration]
# if (!isalnum(start[len + 1]))
# ^
# drm5.c:384:51: warning: passing 'char [64]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (!res) res = my_mp_to_unsigned_bin(&d, des_key, sizeof(des_key));
# ^~~~~~~
# drm5.c:295:55: note: passing argument to parameter 'b' here
# int my_mp_to_unsigned_bin(mp_int * a, unsigned char * b, int len)
# ^
# drm5.c:426:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(pValidation,"MSReader",8) != 0) {
# ^~~~~~~~~~~
# /usr/include/bits/string2.h:899:21: note: expanded from macro 'strncmp'
# && strlen (s1) < ((size_t) (n))) \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# drm5.c:426:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(pValidation,"MSReader",8) != 0) {
# ^~~~~~~~~~~
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:803:30: note: expanded from macro 'strcmp'
# && (__s1_len = strlen (s1), __s2_len = strlen (s2), \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# drm5.c:426:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(pValidation,"MSReader",8) != 0) {
# ^~~~~~~~~~~
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:806:27: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# drm5.c:426:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(pValidation,"MSReader",8) != 0) {
# ^~~~~~~~~~~
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:808:26: note: expanded from macro 'strcmp'
# && (__s1_len = strlen (s1), __s1_len < 4) \
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# drm5.c:426:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(pValidation,"MSReader",8) != 0) {
# ^~~~~~~~~~~
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:810:26: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# drm5.c:426:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(pValidation,"MSReader",8) != 0) {
# ^~~~~~~~~~~
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:815:29: note: expanded from macro 'strcmp'
# ? __builtin_strcmp (s1, s2) \
# ^~
# drm5.c:426:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(pValidation,"MSReader",8) != 0) {
# ^~~~~~~~~~~
# /usr/include/bits/string2.h:902:15: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/bits/string2.h:817:26: note: expanded from macro 'strcmp'
# : __builtin_strcmp (s1, s2)))); })
# ^~
# drm5.c:426:25: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# if (strncmp(pValidation,"MSReader",8) != 0) {
# ^~~~~~~~~~~
# /usr/include/bits/string2.h:902:34: note: expanded from macro 'strncmp'
# ? strcmp (s1, s2) : strncmp (s1, s2, n)))
# ^~
# /usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
# extern int strncmp (const char *__s1, const char *__s2, size_t __n)
# ^
# 19 warnings generated.
# clang -funsigned-char -Wall -O2 -I /usr/lib/ -I ../lib -I ../lib/des -I . -c -o explode.o explode.c
# explode.c:195:30: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# sFiltered = strmerge(pathFile, NULL,NULL);
# ^~~~~~~~
# ./utils.h:38:24: note: passing argument to parameter 'head' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# explode.c:195:19: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# sFiltered = strmerge(pathFile, NULL,NULL);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# explode.c:197:29: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# sDirname = strmerge(pathFile, NULL,NULL);
# ^~~~~~~~
# ./utils.h:38:24: note: passing argument to parameter 'head' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# explode.c:197:18: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# sDirname = strmerge(pathFile, NULL,NULL);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# explode.c:234:34: warning: passing 'char [3]' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# if ((utf8_strmatch(p,"..") == 2) ||
# ^~~~
# ./utils.h:41:33: note: passing argument to parameter 's2' here
# int utf8_strmatch(U8 * s1, U8 * s2);
# ^
# explode.c:235:34: warning: passing 'char [2]' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# (utf8_strmatch(p,".") == 1)) {
# ^~~
# ./utils.h:41:33: note: passing argument to parameter 's2' here
# int utf8_strmatch(U8 * s1, U8 * s2);
# ^
# explode.c:245:30: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# sTemp = strmerge(pathOutput,sDirname, NULL);
# ^~~~~~~~~~
# ./utils.h:38:24: note: passing argument to parameter 'head' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# explode.c:245:41: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# sTemp = strmerge(pathOutput,sDirname, NULL);
# ^~~~~~~~
# ./utils.h:38:37: note: passing argument to parameter 'body' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# explode.c:245:19: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# sTemp = strmerge(pathOutput,sDirname, NULL);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# explode.c:257:22: warning: implicit declaration of function 'mkdir' is invalid in C99 [-Wimplicit-function-declaration]
# status = mkdir(sTemp,0755);
# ^
# explode.c:285:26: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# sTemp = strmerge(pathOutput, sDirname, NULL);
# ^~~~~~~~~~
# ./utils.h:38:24: note: passing argument to parameter 'head' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# explode.c:285:38: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# sTemp = strmerge(pathOutput, sDirname, NULL);
# ^~~~~~~~
# ./utils.h:38:37: note: passing argument to parameter 'body' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# explode.c:285:15: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# sTemp = strmerge(pathOutput, sDirname, NULL);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# explode.c:287:23: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# f = fopen(sTemp, "r");
# ^~~~~
# /usr/include/stdio.h:272:44: note: passing argument to parameter '__filename' here
# extern FILE *fopen (const char *__restrict __filename,
# ^
# explode.c:290:27: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# f = fopen(sTemp,"w");
# ^~~~~
# /usr/include/stdio.h:272:44: note: passing argument to parameter '__filename' here
# extern FILE *fopen (const char *__restrict __filename,
# ^
# explode.c:364:21: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# bytes = strlen(p)+1;
# ^
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# explode.c:385:30: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# p = create_file_path(pathOutput, slash);
# ^~~~~~~~~~
# explode.c:185:28: note: passing argument to parameter 'pathOutput' here
# U8 * create_file_path(U8 * pathOutput, U8 * pathFile)
# ^
# explode.c:390:26: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge(map->sInternal, dot, NULL);
# ^~~~~~~~~~~~~~
# ./utils.h:38:24: note: passing argument to parameter 'head' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# explode.c:390:42: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge(map->sInternal, dot, NULL);
# ^~~
# ./utils.h:38:37: note: passing argument to parameter 'body' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# explode.c:390:15: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge(map->sInternal, dot, NULL);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# explode.c:392:38: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# p = create_file_path(pathOutput, s);
# ^~~~~~~~~~
# explode.c:185:28: note: passing argument to parameter 'pathOutput' here
# U8 * create_file_path(U8 * pathOutput, U8 * pathFile)
# ^
# explode.c:398:34: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge(map->sInternal, int2string(-count), dot);
# ^~~~~~~~~~~~~~
# ./utils.h:38:24: note: passing argument to parameter 'head' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# explode.c:398:70: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge(map->sInternal, int2string(-count), dot);
# ^~~
# ./utils.h:38:50: note: passing argument to parameter 'tail' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# explode.c:398:23: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge(map->sInternal, int2string(-count), dot);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# explode.c:400:46: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# p = create_file_path(pathOutput,s);
# ^~~~~~~~~~
# explode.c:185:28: note: passing argument to parameter 'pathOutput' here
# U8 * create_file_path(U8 * pathOutput, U8 * pathFile)
# ^
# explode.c:501:45: warning: passing 'char *' to parameter of type 'U8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
# status = make_relative_manifest(pathOriginal,&relative_manifest,
# ^~~~~~~~~~~~
# ./manifest.h:36:33: note: passing argument to parameter here
# int make_relative_manifest(U8 * , manifest_type * , manifest_type * );
# ^
# 26 warnings generated.
# clang -funsigned-char -Wall -O2 -I /usr/lib/ -I ../lib -I ../lib/des -I . -c -o transmute.o transmute.c
# transmute.c:53:23: warning: implicitly declaring library function 'strlen' with type 'unsigned long (const char *)' [-Wimplicit-function-declaration]
# drm_size = 2*(strlen(inscription)+1);
# ^
# transmute.c:53:23: note: include the header or explicitly provide a declaration for 'strlen'
# transmute.c:59:9: warning: implicitly declaring library function 'memset' with type 'void *(void *, int, unsigned long)' [-Wimplicit-function-declaration]
# memset(drm_data, 0, drm_size);
# ^
# transmute.c:59:9: note: include the header or explicitly provide a declaration for 'memset'
# 2 warnings generated.
# clang -funsigned-char -Wall -O2 -I /usr/lib/ -I ../lib -I ../lib/des -I . -c -o display.o display.c
# display.c:50:33: warning: implicitly declaring library function 'strcmp' with type 'int (const char *, const char *)' [-Wimplicit-function-declaration]
# ((entry->size) && (strcmp(&entry->name,"/") != 0)) )
# ^
# display.c:50:33: note: include the header or explicitly provide a declaration for 'strcmp'
# display.c:50:40: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# ((entry->size) && (strcmp(&entry->name,"/") != 0)) )
# ^~~~~~~~~~~~
# display.c:52:40: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# err = lit_get_file(lit,&entry->name,&p,&real_size);
# ^~~~~~~~~~~~
# ../lib/litlib.h:232:51: note: passing argument to parameter 'name' here
# int lit_get_file(lit_file * litfile, const char * name, U8 ** ptr, int * psize);
# ^
# 3 warnings generated.
# clang -funsigned-char -Wall -O2 -I /usr/lib/ -I ../lib -I ../lib/des -I . -c -o utils.o utils.c
# utils.c:100:20: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# bytes = strlen(p)+1;
# ^
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# utils.c:119:21: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# bytes1 = strlen(s1)+1;
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# utils.c:120:21: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# bytes2 = strlen(s2)+1;
# ^~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# utils.c:146:26: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# iter->bytes = strlen(string);
# ^~~~~~
# /usr/include/string.h:394:35: note: passing argument to parameter '__s' here
# extern size_t strlen (const char *__s)
# ^
# 4 warnings generated.
# clang -funsigned-char -Wall -O2 -I /usr/lib/ -I ../lib -I ../lib/des -I . -c -o manifest.o manifest.c
# manifest.c:33:5: warning: implicitly declaring library function 'memset' with type 'void *(void *, int, unsigned long)' [-Wimplicit-function-declaration]
# memset(m, 0, sizeof(mapping_state));
# ^
# manifest.c:33:5: note: include the header or explicitly provide a declaration for 'memset'
# manifest.c:94:15: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge((char *)mapSrc->sOriginal, NULL, NULL);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# manifest.c:98:15: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge((char *)mapSrc->sInternal, NULL, NULL);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# manifest.c:102:15: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge((char *)mapSrc->sType, NULL, NULL);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# manifest.c:175:40: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge("../",sRelative, NULL);
# ^~~~~~~~~
# ./utils.h:38:37: note: passing argument to parameter 'body' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# manifest.c:175:23: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge("../",sRelative, NULL);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# manifest.c:176:44: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# } else s = strmerge("..\\",sRelative, NULL);
# ^~~~~~~~~
# ./utils.h:38:37: note: passing argument to parameter 'body' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# manifest.c:176:26: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# } else s = strmerge("..\\",sRelative, NULL);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# manifest.c:182:26: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge(sRelative,utf8_ptr(&iterYou),NULL);
# ^~~~~~~~~
# ./utils.h:38:24: note: passing argument to parameter 'head' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# manifest.c:182:36: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge(sRelative,utf8_ptr(&iterYou),NULL);
# ^~~~~~~~~~~~~~~~~~
# ./utils.h:38:37: note: passing argument to parameter 'body' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# manifest.c:182:15: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# s = strmerge(sRelative,utf8_ptr(&iterYou),NULL);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# manifest.c:185:34: warning: passing 'U8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# sRelative = strmerge(utf8_ptr(&iterYou), NULL, NULL);
# ^~~~~~~~~~~~~~~~~~
# ./utils.h:38:24: note: passing argument to parameter 'head' here
# char * strmerge(char * head, char * body, char * tail);
# ^
# manifest.c:185:23: warning: assigning to 'U8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
# sRelative = strmerge(utf8_ptr(&iterYou), NULL, NULL);
# ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 13 warnings generated.
# gcc -o clit clit.o hexdump.o drm5.o explode.o transmute.o display.o utils.o manifest.o ../lib/openclit.a /usr/lib/libtommath.a
# ==> Entering fakeroot environment...
# ==> Starting package()...
# ==> Tidying install...
# -> Removing doc files...
# -> Purging unwanted files...
# ==> Checking for packaging issue...
# ==> Creating package "convertlit"...
# -> Generating .PKGINFO file...
# -> Generating .BUILDINFO file...
# error: invalid option '--noprogressbar'
# -> Generating .MTREE file...
# -> Compressing package...
# ==> Leaving fakeroot environment.
# ==> Finished making: convertlit 1.8-7 (Thu Apr 13 17:03:15 UTC 2017)

CMD: pacman --query --file convertlit-1.8-7-x86_64.pkg.tar.xz
# convertlit 1.8-7

Creating hybrid package for 'convertlit'

Trying to find vanilla package 'convertlit'...

CMD: pacman --query --file /mirror/convertlit-1.8-7.pkg.tar.xz
# convertlit 1.8-7

Package file has the following structure:
# /.PKGINFO
# /.MTREE
# /usr/bin/clit

Generating .MTREE

CMD: bsdtar -czf .MTREE --format=mtree --options=!all,use-set,type,uid,mode,time,size,md5,sha256,link .PKGINFO usr

Tar-ing up files

CMD: bsdtar -cf - .PKGINFO usr .MTREE

CMD: xz -c -z

Successfully ran bsdtar -cf - .PKGINFO usr .MTREE | xz -c -z

CMD: bsdtar -tqf convertlit.pkg.tar.xz .PKGINFO
# .PKGINFO

Created package at path /var/cache/pacman/pkg/convertlit.pkg.tar.xz

Attempting to access local repository, attempt 1

CMD: repo-add /var/cache/pacman/pkg/tuscan.db.tar /var/cache/pacman/pkg/convertlit.pkg.tar.xz
# ==> Extracting database to a temporary location...
# ==> Extracting database to a temporary location...
# ==> Adding package '/var/cache/pacman/pkg/convertlit.pkg.tar.xz'
# -> Computing checksums...
# -> Creating 'desc' db entry...
# -> Creating 'files' db entry...
# ==> Creating updated database file '/var/cache/pacman/pkg/tuscan.db.tar'